본문 바로가기

CTF_write_up/h3xor6

H3XOR_최종 성적 web all clear!! 2017. 1. 8.
H3XOR_초보개발자의하루 made by ch4n3 초보 개발자의 하루 히힛 오늘은 개발 배우기 시작한지 딱 한달되는 날이다! 정말 기분 좋다ㅎㅎ 개발할 때 마다 일기를 쓰고 있는데 정말 재밌는 것 같다. 일기보기 일기를 보려면 일(日)을 입력해주세용~~ (ex. 1) // 메인 화면이다. Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in /host/home3/chaneyoon/html/json.php on line 12 [{"daily":null},{"V20xNGFGcDNQVDA9":"Vm0wd2QyUXlVWGxXYTJoV1YwZG9WVll3Wkc5alJsWjBUVlpPV0Zac2JETlhhMUpUVmpGS2MySkVUbG.. 2017. 1. 8.
H3XOR_webhacking?(php 해석 문제) 상당히 많은 시간을 로직 분석에 쏟았다.결론은foo에는 admin이외의 어떠한 값이 들어가도 되며 bar에는 1이라는 최소한의 값만 들어가도 된다는 것$account라는 변수는 무조건 설정 되어 있어야 하며 설정 될려면 foo에 파라미터를 넘겨야 함.explode('/',$string);는 $string에 있는 값에서 /를 기준으로 배열로 나눔if (isset($account) && strlen($account[1]) != 32) die('out4');이 부분에서 길이 32개를 만족시켜주어야 한다. 즉 foo=admin/sVfMpo5axzo6wJAdOL9yYCbodHVn3rxv&bar=111위와 같은 쿼리로 해당 로직을 모두 만족 시킬 수 있다.문제는 md5 해슁시 0e를 뽑아내는 32자리의 문자열을 구.. 2017. 1. 8.
H3XOR_simple sqli2 @extract($_GET);@extract($_POST);@extract($_SESSION);$flag = "???????";include './db2.php';if(isset($_GET['id']) && isset($_GET['pw'])) {    if(preg_match("/admin| |\t|\'|unoin|select|_|=|like|[*]|\(\)|or|\/|and|limit/i", $_GET['id'])) die("No Hack ~_~");    else if(preg_match("/admin| |\t|\'|u|in|select|_|=|like|ascii|\(\)|or|\/|and|limit|0/i", $_GET['pw'])) die("No Hack ~_~");    $id = $_GET['.. 2017. 1. 8.