본문 바로가기

webhacking.kr3

[웹해킹문제풀이] # webhacking.kr 워게임 18번 처음에 들어가면 이렇게 나와 있어서 일단 임의의 값으로 흔히 쓰는 1을 입력해보았다. 그랬더니 hi guest라고만 출력되고 아무말이 없다. 그래서 다른 임의의 값 9를 입력해보았다. 아무런 변화가 없다. 이때 알았어야 했는데!!! 보다시피 캡처도 URL을 빼고 캡처한 걸 보면 알겠지만 URL이 중요하다고는 생각도 못했다ㅋㅋ 아무튼 계속 해보자. 앞서 배운 가장 기본이 되는 SQL쿼리 조작 문장인 1' or '1'='1 을 입력해보았다. 좀 배운건 뭐든 써봐야 직성이 풀리는 성격 우왕 뭔가 색다른 문장이 나온다. no hack 뭔가를 더 알아내기 힘들다고 판단 source코드를 보러갔다. 소스 코드를 볼수 있는 버튼은 하단에 연두색으로 있다 내가 중심적으로 볼 건 페이지 디자인이 아니므로 php문만 캡처.. 2020. 10. 4.
[웹해킹문제풀이] # webhacking.kr 워게임 26번 소스 코드를 보여준다고 하니 view source 를 눌러보자 if(preg_match(“/admin/”, $_GET[‘id’])) {echo”no!”; exit(); } >> 가장 먼저 preg_match 라는 명령어로 admin이라는 단어를 걸러내고 있음을 알 수 있음 하지만..가장 마지막 명령을 보면 If($_GET[‘id’]==“admin”) { solve(26);} 이므로 이 문제를 푸는 핵심 단어가 admin임을 알 수 있다. $_GET[‘id’] = urldecode($_GET[‘id’]) ; >> GET형식으로 받은 id값을 urldecode()를 통해 변호하여 다시 대입해놓는다. 이제 단순히 admin이라는 단어를 url 인코딩하면 될 것 같지만 그럼에도 문제는 해결되지 않는다. 왜냐! .. 2020. 10. 2.
[웹해킹문제풀이] # webhacking.kr 워게임 4번 소스 코드를 보여준다고 하니 view source 를 눌러보자 $hash = rand(10,000,000, 99,999,999) . “salt for you”; >> 해쉬값에 10,000,000 부터 99,999,999까지의 수 중 하나에 salt for you라는 문장을 덧붙인 값을 대입한다. $_SESSION[‘’chall4’] = $hash; >>Chall4의 세션키를 hash에 저장된 값으로 설정 for($i=0; $i> 해쉬에 저장된 값을 sha1로 암호화하고 다시 그 값을 hash에 대입 워게임 4번을 풀려면? Sha1은 복호화가 가능하지 않은 단방향 암호이다. 따라서 우리는 가능한 모든 가지의 경우의 수를 마찬가지로 500번 복호화하여 문제에서 준 암호값과 같은지 비교하여야 한다. 즉 10,.. 2020. 10. 2.