$ 웹 해킹 $
-
[Renewal] webhacking.kr old-25 [150]$ 웹 해킹 $/webhacking.kr 2020. 1. 11. 12:19
flag.php를 열어 봐야 할거 같습니다. FLAG is in the code 라고 되어있습니다. 코드 내부를 봐야할것 같습니다. php 파일의 코드 내부를 확인할때 PHP Wrapper 라는 것을 사용합니다. PHP는 PHP스스로의 입출력, 표준입출력, 오류파일 기술어등에 액세스 할 수 있는 다양한 I/O 스트림을 제공하는데 이를 PHP Wrapper라고 합니다. php://filter/convert.base64-encode/resource= 라는 형식으로 값을 입력 하는데 옆의 문자열은 resource=의 인자로 파일명을 적으면 base64 encoding 해서 사용자에게 보여줍니다. php://filter/convert.base64-encode/resource=flag.php 를 해보겠습니다. h..
-
[Renewal] webhacking.kr old-24 [100]$ 웹 해킹 $/webhacking.kr 2020. 1. 11. 12:01
소스코드를 확인해 보겠습니다. ip를 다루는 $REMOTE_ADDR 과 agent를 다루는 $HTTP_USER_AGENT가 있습니다. 이문제를 해결하는 주목적은 $ip가 127.0.0.1 이 되어야 합니다. REMOTE_ADDR 이라는 쿠키를 제작해서 값을 넣어보자. 필터링 되는 값이 있으니까 34라고 뜬다. 12 7. 0. 이 사라진다. 아래의 값을 쿠키에 입력하면 Clear! 112277...00...00...1
-
[Renewal] webhacking.kr old-22 [500]$ 웹 해킹 $/webhacking.kr 2020. 1. 10. 22:49
문제를 들어가 보면 아래와 같이 회원가입 버튼과 로그인 버튼이 있습니다. admin 으로 로그인을 해야할것 같고, 데이터베이스의 칼럼이 id와 pw가있는것 같습니다. 또한 소스코드를 확인해 보면 이전 과는 달리 post 방식으로 데이터를 전달 하는 문제입니다. 프록시 툴인 burp suite를 이용해야 할것 같습니다. 먼저 username 과 password 순으로 값을 받는 쿼리문이라고 생각을 해보면 username에 #(%23)이 필터링되지 않으면 username 으로 pw를 찾을 수 있다. uuid=admin' and length(pw)>0#&pw=123 을 페이로드로 넘겨 보면 아래와 같은 결과가 출력이 됩니다. 참일때 Wrong password! 를 출력하는것 같습니다. 소스코드를 작성해 보겠습..
-
[Renewal] webhacking.kr old-21 [250]$ 웹 해킹 $/webhacking.kr 2020. 1. 10. 22:46
문제를 한번 확인해 보겠습니다. BLIND SQL Injection 이라고 되어 있습니다. guest / guest 를 한번 해보겠습니다. login success 라고 출력이 됩니다. 그렇다면 admin에 1234를 입력해 보면 아래와 같습니다. login fail 이라고 출력을 하는 것 같네요 admin / ' or '1=1 를 입력 해보겠습니다. wrong password 라고 출력이 됩니다. admin / ' or ' 0 을 입력 해보겠습니다. login fail 이 출력이 됩니다. 참이면 wrong password , 거짓이면 login fail을 출력하는것 같습니다. 먼저 pw의 길이를 구해야 할 것 같습니다. admin / ' or length(pw)>0%23 을 URL 로 넣어주면 아래와 ..
-
[Renewal] webhacking.kr old-19 [150]$ 웹 해킹 $/webhacking.kr 2020. 1. 10. 22:25
admin이 입력되어 있다. 제출을 눌러보니 아래와 같이 출력을 합니다. admin으로 제출을 하는 문제인데 필터링에 걸리는것 같습니다. 소스코드를 확인해 보겠습니다. admin을 우회해야하는데 maxlength가 5여서 5글자 밖에 적지 못합니다. 하지만 제출시에 GET 파라미터로 전달을 하게 되기 때문에 URL로 입력을 하면 길이 제한이 없습니다. ad%00min을 넣어 보겠습니다. Clear!