본문 바로가기

반응형

SQL

(12)
드림핵 웹해킹 baby-union writeup 보호되어 있는 글입니다.
드림핵 웹해킹 sql injection bypass WAF Advanced Writeup 보호되어 있는 글입니다.
드림핵 웹해킹 sql injection bypass WAF Writeup 보호되어 있는 글입니다.
드림핵 웹해킹 error based sql injection Writeup 보호되어 있는 글입니다.
DIMI CTF Web simple sqli Writeup DIMI CTF Web simple sqli Writeup 문제는 로그인 창과 함께 코드를 볼 수 있다. 코드를 보면 information, admin, or =, #, ', _, where, 공백이 대소문자 상관없이 필터링 된다. 그리고 admin으로 로그인하면 flag가 출력될 것으로 보인다. 먼저 id와 pw를 trim 함수를 이용해서 입력 값의 공백을 제거해주는 모습이 보인다. 따라서 함수를 열고 닫는 과정이 필요해보인다. id=trim('\') id에 '\'가 들어가면 뒤 싱글쿼터가 문자로 인식된다. 따라서 다음 싱글쿼터가 나오는 곳까지 아이디로 채워진다. pw=trim(') || id like 0x61646d696e -- -') 이후 pw에는 id 함수를 닫고 id에 admin을 넣고 주석처리..
webhacking.kr old 35번 문제풀이(Writeup) webhacking.kr old 35번 문제풀이(Writeup) 문제를 들어가면 위와 같이 출력된다. 코드가 있으니 힌트를 얻고 시작하자. phone과 id값을 같이 입력해야 한다. 이때 preg_match는 *, /, =, select, -, #을 필터링하고 있다. 그리고 id의 길이가 5보다 크면 안 된다. 이후 insert 문을 통해 id와 내 IP와 phone 값이 입력된다. 이후 DB에서 server IP와 내 IP가 같으면 통과한다. "insert into chall35(id,ip,phone) values('{$_GET['id']}','{$_SERVER['REMOTE_ADDR']}',{$_GET['phone']})" 현재 insert문은 위와 같다. "insert into chall35(id,..
webhacking.kr old 09번 문제풀이(Writeup) webhacking.kr old 09번 문제풀이(Writeup) 문제를 들어가면 위와 같이 출력된다. 궁금하니까 1, 2, 3을 눌러보고 Password도 제출해봤다. 1, 2 까지는 ID가 각각 apple과 banana가 나온다. 이후 3을 클릭하니 ID가 Secret으로 나오고, Column 이름에 대해서 알려준다. 딱 봐도 SQL Injection 문제이다. password를 입력하니 get메소드로 pw가 전달되는 것으로 보인다. Password를 알아내려면 no=3에 ID를 알아내야 한다. 문제를 풀기 위해 이번엔 잘못된 입력값을 넣어봤다. apple은 no=1이지만 2를 넣어서 확인해보니 "Access Denied"가 출력된다. 이를 통해 Access Denied가 출력되면 잘못된 것임을 알았으..
webhacking.kr old 08번 문제풀이(Writeup). PHP getenv() 함수 설명 webhacking.kr old 08번 문제풀이(Writeup) 문제를 들어가면 위와 같이 출력된다. 이번에도 admin 계정으로 로그인이 필요해 보이는 문제이다. 코드를 확인해보자. 문제풀이의 핵심은 HTTP_USER_AGENT 값이 admin이 되어야 한다. 따라서 마지막 if문에 mysqli_query에서 user-agent값을 변경해서 admin으로 로그인하는 것이 중요하다. 이 문제도 지금까지 문제와 마찬가지로 SQL Injection으로 풀어야 하는 문제이다. PHP getenv() 함수 설명 getenv()는 내장함수로, 인자의 값에 따라 해당되는 환경변수 값을 알려주는 함수이다. getenv 사용방법 getenv("http_host") 홈페이지 주소값을 얻을 때 getenv("http_re..

728x90