반응형

md5 magic hash 2

[247CTF] COMPARE THE PAIR - 웹해킹 / MD5 Magic Hash

php의 약한 비교(Loose Comparison) 로 인해 발생하는 php magic hash 와 관련된 웹 해킹 문제이다. 문제페이지어 들어가면 이런 코드가 나온다 php 로 작성되었는데 GET 으로 password 파라미터가 설정되어있고, md5(salt. $_GET['password']) 의 값이 password_hash 의 값인 0e902564435691274142490923013038 와 같은지 확인한 후 같으면 flag 를 보여주는 기능이다. salt 까지 들어간 해시값의 원래 문자열을 찾는건 불가능에 가깝지만 비교할때 '===' 가 아닌 '==' 을 이용해 두 값을 비교하기 때문에 취약점이 발생한다. 위 사진처럼 php 에서는 == 을 사용해 비교를 할 경우 두 값이 정확하게 같지 않아도 ..

워게임/247CTF 2023.09.23

[Root Me] PHP - Loose Comparison - 웹해킹 / MD5 Magic Hash

php의 약한 비교(Loose Comparison) 로 인해 발생하는 php magic hash 와 관련된 웹 해킹 문제이다. 문제 페이지에 접속하면 이런 화면이 나온다. seed 와 hash를 입력하는 칸이 있고, 옆에는 check 버튼이 있다. 뭔지 모르겠으니 일단 아래 source code 버튼을 눌러 소스코드를 확인해본다. source code 버튼을 누르면 이렇게 아래쪽에 소스코드가 출력된다. 이 부분부터 살펴본다. seed 에 입력한 값은 $s 에 저장되고, hash 에 입력한 값은 $h 에 저장된다. 각각의 변수에 저장되기 전에 sanitize_user_input 함수와 secured_hash_function 함수에 입력값을 먼저 넣어주는데, sanitize_user_input 함수는 정규식..

워게임/Root Me 2022.10.25
반응형