목록전체 (162)
Oh! JUN
보호되어 있는 글입니다.
보호되어 있는 글입니다.
error_reporting(0); include("./config.php"); // hidden column name, $FLAG. mysql_connect("localhost","zairo","zairo_pz"); mysql_select_db("zairo"); /**********************************************************************************************************************/ function rand_string() { $string = "1234567890abcdefghijklmnopqrstuvwxyz"; return str_shuffle..
error_reporting(0); include("./config.php"); // hidden column name, $FLAG. mysql_connect("localhost","adm1nkyj","adm1nkyj_pz"); mysql_select_db("adm1nkyj"); /**********************************************************************************************************************/ function rand_string() { $string = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefghijklmnopqrs..
일단 봤을 때는 preg_match에서 예외되는것도 딱히 거슬릴게 없다. 그래서 첫번째로 ' or 1=1%23 음 안된다. 좀 더 자세히 알고 싶어서 이것도 해봤다. ' union all select group_concat(column_name) from information_schema.columns where table_schema='zombie' and table_name='prob_zombie'%23 테이블 이름 'prob_zombie' 이면서 DB이름이 'zombie'인 컬럼들을 조회 컬럼이 pw 밖에 없다. 컬럼 pw의 튜플 검색해본다. ' union all select pw from prob_zombie.zombie%23 ' or 1=1%23 할때도 안되었으니까 뭐 안되겠죠 ㅠㅠ pw가 비워..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
문제 파일 다운로드해서 app.py 코드 확인해보면 'admin', 'select' 를 포함한 여러문자를 필터링 하는것과 쿼리를 확인할 수 있다. uid가 'admin'이면 flag.txt 파일에 있는 FLAG 값을 구할 수 있다. 가장 먼저 생각이 난것은 'admin'이 필터링 되니까 char() 우회방법을 생각했다. 'admin' char(97)||char(100)||char(109)||char(105)||char(110) 오랜만에 해서 감 다 잃었는지 처음에 아래와 시도를 했다.(다음부터 그러지마) 시도한 쿼리 SELECT uid FROM users WHERE uid='char(97)||char(100)||char(109)||char(105)||char(110)||char(39)--' and upw..