Hacking/HackCTF

    Hackctf[Web] Authenticate

    ctf.j0n9hyun.xyz:2031/ 들어가면 로그인 창이 하나 있다. 일단 보이는게 거의 없어서 관리자 도구로 까보았다. 너무나도 수상하기때문에 이녀석이 먼가 있을것 같다고 생각하여 일단 보기 편하게 vscode로 옮겼다. $(".c_submit").click(function(event) { event.preventDefault(); var u = $("#cpass").val(); var k = $("#cuser").val(); var func = "\x0d\x13\x45\x17\x48\x09\x5e\x4b\x17\x3c\x1a\x1f\x2b\x1b\x7a\x0c\x1f\x66\x0b\ x1a\x3e\x51\x0b\x41\x11\x58\x17\x4d\x55\x16\x42\x01\x52\x4b\x0f..

    Hackctf [Web]Cookie

    http://ctf.j0n9hyun.xyz:2027 문제 이름부터 쿠키니까 쿠키에디터로 쿠키를 까보자. 무언가로 암호화 되어있다. 대충 때려맞춰야 되는데 가장 대표적인 base64방식으로 복호화했다. 첨에 하면서도 이게 맞나?하면서 하긴 했는데 다행히도 3번 까니까 '{"id":"2","type":"guest"}'라는 문자열이 나왔다. 현재 type이 guest니까 id를 1로 type을 admin으로 바꿔준담에 쿠키를 넣어 보았는데 아무일도 일어나지 않았다. 아마 다시 basd64로 3번 인코딩해야하는 것 같다. 이제 나온 문자열인 "WlhsS2NGcERTVFpKYWtWcFRFTktNR1ZZUW14SmFtOXBXVmRTZEdGWE5HbG1VVDA5"를 쿠키에 넣었다. 패스워드가 틀렸단다. 그래서 밑에있..

    Hackctf [Web]가위바위보

    http://ctf.j0n9hyun.xyz:2037 웹 가위바위보 게임이 나온다 여기서 머 취약점 같은게 있을것 같진 않으니까 설정창으로 가보자. 파일 선택, 프로필 사진 변경이 있는걸 보니까 웹쉘인것 같아서 아주 간단한 php웹쉘을 만들어서 업로드 해보았다. 이미지 파일만 업로드 되는것 같다. 어떻게 필터링을 우회할지 생각해보다가 HxD로 hex를 조작하여 png헤더를 붙여주기로 했다. png 헤더가 8byte기때문에 다른 문자 8개를

    Hackctf [Web]Input Check

    http://ctf.j0n9hyun.xyz:2033 들어가보면 입력창이 하나 있고 flag를 입력하라고 한다. 하란대로 했더니 이렇게 나온다. 일단 관리자 도구로 코드를 한번 보니 주석에 인풋 커멘드 검사는 배열로 한다는 머 그런 뜻인 것 같다. 그래서 text=flag를 text[]=flag로 바꿔주었더니 flag가 나왔다.

    Hackctf [Web]Time

    ctf.j0n9hyun.xyz:2032/ 에 들어가보면 php코드와 제출창을 제공해준다. 숫자를 입력하면 숫자인지 확인하고 5,184,000보다 크고 7,776,000 작은지 확인한 뒤에 그만큼의 시간을 기다린 후에 flag를 알려준다는 것 같다. 처음엔 5,184,000를 쓴 뒤에 그만큼 기다리려고 했다. 결국 모르겠어서 write up을 봤다. 문제의 핵심은 11번째줄의 형변환인데 php에서 int형으로 형변환을 하면 float형의 소수점 뒤를 버려버린다. 5184000이를 지수형으로 표현하면 5.18400e6이다. 이제 이를 제출하면 5아래의 소수점이 없어지기때문에 5초 후에 flag를 얻을 수 있다. #0.648e7로 하면 더 빠르게 flag를 얻을 수 있다.

    Hackctf [Web]마법봉

    ctf.j0n9hyun.xyz:2029/ 해쉬에 마법을 부여하라는걸 보니 해쉬함수에 관한 문제인 것 같다 View source에 들어가 보면 이런 소스를 볼 수 있다 간단하게 해석해 보면 md5로 해시 암호화한 값과 sha1으로 해시 암호화한 값이 같으면 flag를 준다는 것 같다. md5로 암호화한 240610708는 매직해시이다. 매직 해시란 0e로 시작하는 문자열뒤가 모두 숫자인 해시로 php에서는 이를 모두 0으로 인식한다. md5와 sha1모두 이런 매직 해시가 존재하는데 sha1의 매직해시값은 10932435112이다. 10932435112를 제출하면 flag를 얻을 수 있다.

    Hackctf [Web]Login

    ctf.j0n9hyun.xyz:2024/ 로그인 페이지가 있는걸 보니 딱봐도 sql injection인것 같아서 걍 username에 admin'#를 쓰고 password에 아무거나 썼더니 flag가 나왔다.

    Hackctf [Web]Read File

    http://ctf.j0n9hyun.xyz:2021 링크로 들어가면 구글 페이지와 함께 ctf.j0n9hyun.xyz:2021/?command=google.com 이런 url을 볼 수 있다. 메인 페이지에 flag.php를 찾으라고 하는거 같으니 command=flag.php를 해보았다. 이렇게 나온다 flag나 php를 필터링 하는게 아닐까 하는 생각에 flflagag.php를 넣어보았다. flag가 나온다!