$ 웹 해킹 $/webhacking.kr
-
[Renewal] webhacking.kr old-15 [50]$ 웹 해킹 $/webhacking.kr 2019. 12. 5. 12:19
문제에 들어가보면 아래와 같이 alert가 출력이 됩니다. 그리고 바로 /로 이동을 합니다. 소스코드를 바로 확인해 보기 위해서 아래와 같은 경로에 들어가 보겠습니다. view-source:https://webhacking.kr/challenge/js-2/ ?getFlag를 파라미터로 넣으면 된다고 합니다. https://webhacking.kr/challenge/js-2/?getFlag 를 들어가면 Clear!
-
[Renewal] webhacking.kr old-11 [300]$ 웹 해킹 $/webhacking.kr 2019. 12. 5. 11:43
소스코드를 확인해 보겠습니다. 그중에서 핵심 코드인 php코드를 집중적으로 확인해 보겠습니다. 해당 문제는 300점 짜리 문제인데 아마도 정규 표현식 문제여서 300점인것 같아 보입니다. [1-3] : 1~3사이중 하나의 숫자 입력 [a-f]{5} : a~f 사이중 5개의 문자입력 $_SERVER[REMOTE_ADDR] : 자신의 공인 IP 주소 \t : %09로 Tab을 의미 합니다. 아래와 같이 URL 을 입력하면 Clear가 됩니다.
-
[Renewal] webhacking.kr old-4 [300]$ 웹 해킹 $/webhacking.kr 2019. 12. 5. 10:55
문제를 확인해 보면 아래와 같이 해시 값처럼 보이는 데이터가 눈에 보입니다. 소스코드를 확인해 보겠습니다. 중요한 부분인 php 코드 부분을 확인해 보면 아래와 같습니다. 안티 브루트포스를 위해서 sleep 을 걸어두었습니다. 그리고 rand함수로 출력되는 "어떠한 수"salt_for_you 라는 값이 $hash에 들어가는데 우리가 화면에서 볼수 있는 녹색의 문자열이 hash값 이라는 것을 알 수 있는데 아래를 보면 for문으로 500번 sha1 함수를 이용해서 돌리게 됩니다. 그래서 저희가 해야하는 것은 녹색의 문자열을 sha1로 500번 복호화를 했을때 나오는 "어떤 랜덤 값"salt_for_you 을 찾는 것입니다. 하지만 거의 불가능에 가깝다고 생각이 들었고 Anti brute force 가 있기..