Web
-
-
-
-
Zh3r0 CTF - WriteUpWeb 2020. 6. 17. 11:39
Google Source Code - 우선 첫번째 페이지의 소스입니다. 주석처리에서 get 'page'가 보여서 get 방식으로 page변수를 넣어주면 되지 않을까 라는 생각을 하였습니다. 상태코드는 제대로 전달되고 아무 값이 없는 페이지가 나옵니다. 여기서 저는 LFI 취약점인 줄 알고 노가다를 했지만 후에 ?page=flag를 전달해본 뒤 결과값이 이렇게 나왔습니다. 유투브에 들어가보니 upload 라는 제목에 영상이 하나 나옵니다. 여기서 파일업로드 취약점이다 생각해서 page=upload 에 들어가니 파일을 올릴 수 있는 페이지가 나옵니다. 여기서 부터는 PHP 웹쉘코드를 올리고 flag를 구했습니다. 디렉토리 하나하나 까기엔 이름이 너무 복잡해서 우선 find명령어로 flag가 있는 디렉토리를 ..
-
SQL-Injection (2) 정리 (from_rubiya.kr)Web 2020. 3. 20. 01:14
query : {$query}"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if($result['id']) echo "Hello {$result[id]}"; if($result['id'] == 'admin') solve("wolfman"); highlight_file(__FILE__); ?>를? 이용한 sql 인젝션 취약점 공부를 시작하자. 우선 preg_match를 보면 https://www.php.net/manual/en/function.preg-match.php다 보았다 생각 하에 whitespace 즉 띄어쓰기를 막아놔서 %0a(tab)으로 대체해서 얻어갈 것이 무엇인지 공부를 해보겠습니다우선 result['id'] 즉 ..
-
SQL-Injection 정리(1)Web 2020. 3. 19. 19:01
기본적인 에러기반 SQL Injection --> ' or '1=1 이것을 기본으로 필터링 또는 우회해서 문제를 푼다. ex) select id from test where id='{$_GET[id]}' and pw='{$_GET[pw]}' 현재 GET 방식으로 파라미터를 전달하고 있다. url이 ~~.php?id=admin&&pw=admin 이라 하면 sql 구문은 select id from test where id='admin' and pw='admin' 으로 삽입이 되어진다. 여기에 아무 필터링이 없다는 가정하에 ~~.php?id=admin&&pw=admin' or '1=1 을 입력하게 되면 select id from test where id='admin' and pw='admin' or '1=1'..