반응형

md5("admin") 의 경우에는 왼쪽과 같이 21232f297a57a5a743894a0e4a801fc3으로 출력되지만 

md5("admin",true)와 같이 코딩되어 있을 경우에는 오른쪽과 같이 바이너리 형식으로 반환된다.



옵션으로 준 TRUE값은 raw_output에 대한 TRUE 값으로 바이너리 형식으로 출력하겠따는 의미이다.


참고 ) http://php.net/manual/kr/function.md5.php


따라서 SQL Injection 문제에서 md5 부분에 true로 되어있다면 이 기법을 생각해봐라


129581926211651571912466741651878684928


md5("129581926211651571912466741651878684928",true) 하면 바이너리형태로 아래와 같이 출력된다.


�T0D��o#��'or'8


따라서 만약 select * from test where id='$id' and pw='$pw' 과 같은 쿼리일 때 $pw부분에 위의 결과가 들어가


select * from test where id='$id' and pw='�T0D��o#��' or '8' 가 되어 '8' 부분에 의해 True가되어 결과가 출력된다.



참고 ) http://bbolmin.tistory.com/77



반응형

'Hacking > Web' 카테고리의 다른 글

Web Application Firewall (WAF) Evasion Techniques  (0) 2018.06.03
[SuNiNaTaS] 22번 문제  (0) 2018.05.10
Blind SQL Injection tool 분석  (4) 2018.05.06
Padding Oracle Attack  (0) 2018.05.01
자바스크립트 난독화  (0) 2018.05.01
블로그 이미지

rootable

,