티스토리 뷰
간단한 로그인 SQL injection 문제라고 생각했다가 고생 좀 했습니다.
힌트를 봅시다.
magic_quotes_gpc=off <--이건 뭔 소리일까?? 검색 해보았더니 php 에서 '(싱글쿼터)를 \'로 치환해주는 녀석이더군요. off 되어 있으니 상관 없고..
admin 으로 로그인을 하라고 하는군요.
일반적인 sql injection 구문으로 공격을 시도하니 No Hack 이라고 뜨네요.
PW : guest'--
요렇게 입력하니 Failed 가 뜨네요.
PW : guest'#
이건 잘 되는데 말이죠.
여기서 궁금한 점 하나!
No Hack 과 Failed 의 차이는 무엇일까??
계속 공격을 시도하다가 알게된 사실은
or, and, -- 등을 필터링 하고 있다는 것입니다.
때문에 or 를 직접 입력 할 수가 없어,
인코딩 하여 공격 . . . . 공격 실패...
o/**/r 공백 필터 우회 공격 . . . . 공격 실패...
검색.. 공격.. 실패.. 검색.. 공격.. 실패.. 검색.. 공격.. 실패..
일반적인 SQL injection 공격, 우회 패턴은 도움이 되질 않았습니다.
그러다가 발견한
False SQL injection 공격!!
.... OR 비트 연산는 프로그래밍을 해본 사람이라면 대부분 알고 있을 것이다. 그리고 아까 말 했듯이 ''는 0이라 했음으로 0과 0을 OR 비트 연산을 하면 결과 값이 0이 되므로 아래와 같은 연산은 결국 False SQL injection을 성공하게 된다. '|0#
|
이제 어떻게 해야 할지 아시겠죠?? 문제는 풀렸습니다.
- Total
- Today
- Yesterday
- ajax 예제
- excel을 json으로
- Windows Terminal cmd
- dynamodb console
- 자바
- profile.ps1
- 자바 예제
- 크롬 한글 스페이스
- Windows Terminal
- 크롬 한글
- aws configure
- MySQL
- SIS
- RUBY
- 예제
- PowerShell ObjectNotFound
- java socket
- Windows Terminal Color
- 자바 소켓
- excel2json
- 크롬 한글 문제
- New-Alias
- excel to json
- 재테크
- 파일 입출력 예제
- Java
- aws dynamodb
- java 소켓
- golang excel2json
- 소켓 예제
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |