목록2025/07 (25)
Tyojong
문제에 접속하면 바로 Access_Denied 경고창이 출력되면서 메인화면으로 이동된다. burp suite의 설정에서 response값을 인터셉트할 수 있는 설정을 켜고 문제 접속 과정을 확인해보면 alert창을 띄우고 메인페이지로 이동시키는 코드가 존재한다. 해당 코드를 삭제하고 forward버튼을 누르면 Get Flag 버튼이 나온다. 버튼을 누르면 문제가 해결된다.
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__); ?> 문제 목표if($result['id'] == 'admin') solve("wolfman");id가 admin이면 문제가 해결된다.if(preg_match('/ /i', $_GET[pw])) exit("No whitespace ~_~");공백이 필터링된다. 공백 필터링을 우회할 수 있는 방법은 많다. (우회 방법은 다른 블로그들이 더 잘 정리되..
보호되어 있는 글입니다.
MYSQL버전 확인mysql> select @@version;mysql> select version();에러 메시지로 DBMS 확인mysql> select 1 union select 1, 2;Blind SQLI를 이용한 버전 확인# @@version => '5.7.29-0ubuntu0.16.04.', mid(@@version, 1, 1) => '5'mysql> select mid(@@version, 1, 1)='5';+------------------------+| mid(@@version,1,1)='5' |+------------------------+| 1 |+------------------------+1 row in set (0.00 sec)mysql> sel..
MYSQL스키마 정보mysql> select TABLE_SCHEMA from information_schema.tables group by TABLE_SCHEMA;테이블 정보mysql> select TABLE_SCHEMA, TABLE_NAME from information_schema.TABLES;컬럼 정보mysql> select TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME from information_schema.COLUMNS;실시간 실행 쿼리 정보mysql> select * from information_schema.PROCESSLIST;mysql> select user,current_statement from sys.session;DBMS 계정 정보mysql> select ..
query : {$query}"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if($result['id']) echo "Hello admin"; $_GET[pw] = addslashes($_GET[pw]); $query = "select pw from prob_orc where id='admin' and pw='{$_GET[pw]}'"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if(($result['pw']) && ($result['pw'] == $_GET['pw'])) solve("orc"); highlight_file(__FILE__); ?> 문제 목..
query : {$query}"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if($result['id']) echo "Hello {$result[id]}"; if($result['id'] == 'admin') solve("goblin"); highlight_file(__FILE__); ?> 문제 목표if(preg_match('/\'|\"|\`/i', $_GET[no])) exit("No Quotes ~_~");따옴표는 작성이 불가능하고if($result['id'] == 'admin') solve("goblin");id가 admin이 출력되면 해결된다. 문제 해결따옴표를 사용할 수 없기 때문에 일반적인 문자열은 바로 사용할 수 없다...
query : {$query}"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if($result['id'] == 'admin') solve("cobolt"); elseif($result['id']) echo "Hello {$result['id']}You are not admin :("; highlight_file(__FILE__); ?> 문제 목표if($result['id'] == 'admin') solve("cobolt");출력된 id가 admin이면 문제가 해결된다. 문제 해결id가 admin인 유저의 id를 출력하기 위해?id=admin' --+ 를 입력하면 해결된다.select id from prob_cobolt where i..
query : {$query}"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if($result['id']) solve("gremlin"); highlight_file(__FILE__);?>입문자를 위해 Lord of SQL Injection에서 앞으로 기본적으로 사용되는 코드만 살펴보자. (php 코드는 알면 좋다.) if(preg_match('/prob|_|\.|\(\)/i', $_GET[id])) exit("No Hack ~_~");preg_match 함수를 이용해 정규표현식에 해당하는 문자열을 필터링한다. (해당 문제에서는 다른 문제에 영향을 줄 문자열들만 필터링 하고 있다.)$query = "select id from prob_gr..
보호되어 있는 글입니다.