일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Samba
- 포트스캔
- 모의해킹
- 취약점분석
- SQL Injection
- Metasploit
- 암호해독
- web hacking
- load of sqlinjection
- 권한상승
- 침투테스트
- 해킹툴
- root권한
- CTF
- 스캐닝
- 취약점 스캔
- 내부침투
- 메타스플로잇
- 해킹도구
- 칼리리눅스
- 취약점
- 해킹
- smb
- SQLINJECTION
- Hacking
- 스캔
- 시스템 해킹
- sql
- Kioptrix
- Los
- Today
- Total
목록SQL Injection (4)
감자 텃밭
vulnhub에서 제공하는 취약한 시스템인 kioptrix level1을 사용하여, 침투테스트를 실습해 보았다. ● 정보 수집 : Nmap, netdiscover ● 취약 스캐닝 : SQL Injection 수집정보 1. OpenPort : 22, 80 2. OpenSSH 4.7p1, Apache 2.2.8, PHP 5.2.4 3. mysql 서비스 사용 (스캔결과 x 외부노출 x 내부적으로 사용설정) 동일 네트워크 대역대에 타깃 시스템이 존재하므로, 타깃 ip부터 확보했다. 172.30.1.8 ip로 확인했으며, 추가 정보수집을 이어나갔다. 오픈되어 있는 서비스로는 22(SSH), 80(http)가 오픈되어 있었다 그 외의 정보로는 Linux Kernel 2.6.x 버전 openssh 4.7p1, ap..
21단계 = iron_golem 소스코드 해당 소스코드를 보면 이전문제와 다르게 추가적으로 적용된 필터링으로는 sleep, benchmark가 필터링되어 있다. 이는 Time based SQL Injection은 불가능하게 하기 위함으로 추측된다. 이번문제는 참값을 입력해도 참 거짓이 구분이 되지 않는다. 이럴 경우 사용할 수 있는 게 1. Time Based SQL Injection 2. Error Based SQL Injection 두 종류의 인젝션을 사용할 수 있는데 필터에서도 보았듯이 1번 해결법 Time Based SQL Injection은 사용불가다. 코드를 자세히 보면 즉 에러가 발생 시 에러페이지를 출력시켜 준다. 2번 해결법인 Error Based SQL Injection을 사용하면 될 ..
19단계 = xvais 소스코드 이번문제에서는 이상하리만큼 필터링되는 게 없으며, regex와 like가 필터링되고 있다. 이번 문제의 의도를 파악하기 힘든부분이었으며, 해당 문제에서 많은 걸 배우게 되었다. 우선 기존문제들과 동일하게 입력값과 db저장된값을 비교하므로, Blind SQL Injection을 이요하면 될 것이다. 정상적으로 구해지는 거 같은데 불안한 기분이 맴돌았다.. 늘 그래왔듯 패스워드길이와 문자열을 추출하기위해 파이썬코드를 작성하여 추출하려 시도하였지만 패스워드의 길이는 12자리인 걸 확인 후 문자열이 구해지지 않았다.... 우선 패스워드의 길이는 12자리였다. 파이썬 코드의 오류인가 싶어 아무리봐도 오류코드를 찾지 못하여 직접 URL로 값을 확인해본 결과 필터도 걸려있지 않는데 A..
12단계 = DARKKNIGHT 소스코드 이번문제에서는 넘겨줘야 할 파라미터값이 pw, no 두 가지로 보인다. 필터링되는 값을 확인해보면 pw 파라미터에서 '을 필터링하며, no파라미터에서 ', substr, ascii, = 를 필터링하고 있다. 이전 문제에서 사용한 것들을 잘 조합해서 사용하면 무난하게 우회가 가능할 거 같다. 우선 '를 필터링하여 문자열을 필터링하고 있다. 이럴 경우 id = 'admin'이 안되지만, My SQL에서는 아스키코드값인 16진수로 표현할 경우 문자열로 인식이 가능하다. 또한 no에서의 substr은 substrin(), mid() , left(), light()등 다양한 함수로 우회가 가능하다. ascii()는 ord(), hex()등으로 우회가 가능하다. =은 이제 ..