본문 바로가기

web46

[Webhacking.kr] (Web) 24번 풀이 (old-24) 나의 아이피를 보여주고, 잘못된 아이피라 나온다. view-source $REMOTE_ADDR, $HTTP_USER_AGENT 헤더를 가져와, useragent 는 그냥 출력해주고, ip주소는 .. -> . 12 -> "" 7. -> "" 0. -> "" 이렇게 필터링 해서 출력해준다. 이때 필터링된값이 127.0.0.1 이 되면 문제가 풀리는것이다. 필터링했을때 127.0.0.1 이 나오게 문자열을 우회해보자. 112277....00....00....1 이렇게 입력할면 필터링했을때 >>> a="112277....00....00....1" >>> a=a.replace("..",".") >>> a=a.replace("12","") >>> a=a.replace("7.","") >>> a=a.replace(".. 2020. 4. 4.
[Webhacking.kr] (Web) 23번 풀이 (old-23) xss 공격을 하라고 한다. 그대로 입력해보자. no hack이다. 필터링하는문자가 있을것같다. 확인해보면, 하나씩 입력해보면 태그는 필터링하지않는것같다. 왼쪽은 hello 을 입력했을때다. 어떤문자를 필터링하나 하나하나 입력해봤다. h -> 통과 he -> no hack 이렇게 뜨는걸 봐서는 문자열이 두글자이상일때 필터링하는것같다. 문자열은 NULL문자 로 우회할수있다. 이런식으로 문자사이사이에 %00 (NULL문자 URL인코딩) 을 넣어주면, 문자가 붙어서 출력되는걸 볼 수 있다. >>> a="alert(1); 2020. 4. 3.
[Webhacking.kr] (Web) 20번 풀이 (old-20) 닉네임과 comment, captcha 가 있고, 2초의 시간제한이있다. 다입력한뒤, submit 해봤다. 너무 느리다고한다. time limit : 2 second nickname comment captcha 중간에 보면, html소스에 capcha_ 의 value 가 그대로 나온다. id, cmt, captcha 의 값이 채워졌는지, captcha가 captcha_ 와 같은지 확인후 lv5.frm.submit() 해준다. 놀라운건, captcha값이 captcha_버튼의 value에 나타나있다는것이다. 2가지풀이법이있다. 첫번째는 콘솔에서 값을채운뒤 submit 하는것이다. 입력하고 엔터누르면 Tooslow 가 뜰 것이다. 뒤로가기 누른뒤 ,바로 오른쪽방향키로 명령어 소환해서 입력하면 풀린다. 두번째.. 2020. 4. 2.
[Webhacking.kr] (Web) 19번 풀이 (old-19) id를 입력하는 폼이있다. admin 으로 제출해보자. admin 이 아니라고한다. admin 인걸 판별하는 요소가 있을텐데, 소스에는 없으니 아무거나 입력해 쿠키를 확인해보자. 안녕하다고 인사를해준다. logout은 눌러도 로그아웃되지 않는다. 쿠키에 userid 가 생겻다. %3D 는 = 를 의미하는데, = 로 끝났으니 base64 인코딩인걸 확인할 수 있다. %3D 를 = 로 고쳐서 디코딩하면 또다른 암호화문자열을 확인할수있다. 32글자이므로 위키피디아에서 암호화알고리즘별 길이를 확인해보자. MD5 로 해시된 문자열같아서 복호화해보기로했다. a 가 나온다. 결과적으로 id를 md5 암호화한뒤, 그걸다시 base64로 인코딩한결과가 userid 쿠키값이란걸 알 수 있다. 혹시모르니 다른것도 해보자. .. 2020. 4. 1.