본문 바로가기

Security/Web2 Hacking

(6)
[WebHacking] suninatas 18번 문제를 보자마자 main이나 back등 이것저것 눌러봤는데 메인 페이지로 돌아갈 뿐이였다. 그래서 문제 해결의 실마리를 찾기위해 숫자들이 의미하는 값들을 생각을 해보았다. 계속보니까 혹시 아스키코드와 관련된 것들이 아닐까? 라는 결론을 내렸고 저기 있는 값들을 c언어로 돌려보았다. 그러니VG9kYXkgaXMgYSBnb29kIGRheS4gVGhlIEF1dGhLZXkgaXMgVmVyeVZlcnlUb25nVG9uZ0d1cmkh라는 값이 나왔고 뭔가 문자열이 인코딩된거 같이 생겨서 base 64 디코딩 사이트를 이용해 위 문자들을 디코딩 해보았더니 Today is a good day. The AuthKey is VeryVeryTongTongGuri!라는 값이 나왔다. 고찰: 마지막 문제는.숫자들이 의미하는 것이..
[WebHacking] webhacking.kr 33번 문제 풀이 33-1번 소스코드를 확인하면 get방식으로 'hehe'를 보내면 되는거 같다. 그래서 get방식으로 “hehe”를 보내면 Wrong이 Next로 변하게 된다. 33-2번 이번에는 post방식으로 hehe와 hehe2를 보내야하는데 post방식은 get방식처럼 url에서 보낼수 없기 때문에 postman을 이용해 post 방식으로 보내준다. 그후 33.php를 웹사이트주소에서 6/뒤에 붙여넣어 https://webhacking.kr/challenge/bonus-6/33.php 를 입력하면 문제가 풀리고 다음문제로 넘어가게된다. 33-3번 Get 방식으로 나의 아이피주소를 보내는 것이니까 33-1번문제와 비슷한 방식으로 하면된다. https://webhacking.kr/challenge/bonus-6/33..
[WebHacking] webhacking.kr 32번 문제 풀이 일단 한 명을 투표하면 아래 사진과 같이 내 이름이 랭킹에 올라간다. 일단 투표를 하면 쿠키값에ok가 들어간 후 값이 있으면 또 다시 중복 투표를 못하게 하는 원리이다. 이 문제를 풀기위해 쿠키값이 들어가도 Ok값이 안들어 가도록 차단을 해주고 python을 이용해 사이트안으로 for문 100번을 돌린다. 그럼 내 아이디 투표수가 올라가 풀리게 된다.!!! 고찰: 이번 문제는 사이트 소스를 파악하는것보다 맥에서 python을 사용하고 이것을 이용해 웹사이트에 반복문을 보내는 것이 처음하는 과정이라서 힘들었다.
[WebHacking] webhacking.kr 24번 문제 풀이 24번 문제에서 view source를 누르면 위와 같은 소스 코드들이 나온다. 여기서 코드들을 훑어 보다가 맨 마지막 줄인 if($ip=="127.0.0.1"){ solve(24); exit(); 를 보고 24번 처음 들어갔을때 있던 ip의 값이 127.0.0.1이면 24번 문제가 풀리는 것 같았다. 그래서 ip를 어떻게하면 변경 할 수 있을까 생각을 해보았다. Editthiscookie를 이용해 적혀져있는 ip값을 변경해보려고했다. 코드를 보면 $ip = $REMOTE_ADDR; $agent = $HTTP_USER_AGENT; if($REMOTE_ADDR){ $ip = htmlspecialchars($REMOTE_ADDR); 이므로 editthiscookie에서 name은 REMOTE_ADDR로 해주..
[WebHacking] webhacking.kr 17번 문제 풀이 처음들어가면 이런 화면이 나오는데 아무런 정보가 없어 소스보기를 해보았다. 그럼 위와같은 창이 나오는데 script부분에 unlock하고 이상한 숫자들이 연산되어있다. Unlock이 저 연산인것으로 볼때 저 값들을 계산한 값이 이 문제의 키워드 같다. function sub(){ if(login.pw.value==unlock){ location.href="?"+unlock/10; } else{ alert("Wrong"); } } 그 후 밑에 보니까 if문을 사용해 login.pw.value값이 unlock과 같으면 정답이 풀리고 그것이 아니면 안풀린다는 코드같다. 그래서 구글 콘솔을 사용해 저 이상한 값들을 연산해보았다. 그 후 연산한 값인 7809297.1를 입력하니까 문제 풀기 성공~~~ 고찰:이 문..
[WebHacking] webhacking.kr 6번 문제 풀이 6번 처음 6번문제를 들어가고 난후 웹사이트에 아무런 힌트가 없는거 같아 view.source를 눌렀다. 그 후 아래와 같은 코드가 나왔다. 들어가자마자 코드를 확인하는데 처음 푸는 웹해킹 문제라 그런지 아는 함수나 문구등이 별로 없었다. 그래서 살펴보다가 마지막에 if($decode_id=="admin" && $decode_pw=="nimda"){ solve(6); 디코딩한 id가 admin이고 디코딩한 pw가 nimda이면 6번 문제가 풀린다는 의미 같다고 생각을 했다. 그 후 위에서부터 차례대로 모르는 함수들을 찾아보기 시작했다. if($_GET['view_source']) view_source(); if(!$_COOKIE['user']){ $val_id="guest"; $val_pw="123qwe..