본문 바로가기

웹해킹/webhacking.kr

(24)
old-54 롸업(webhacking.kr) 처음에 접속하면 password is 뒤의 문자가 이리저리 바뀌더니 조금 지나니까 ?에서 더 이상 안 바뀐다. function run(){ if(window.ActiveXObject){ try { return new ActiveXObject('Msxml2.XMLHTTP'); } catch (e) { try { return new ActiveXObject('Microsoft.XMLHTTP'); } catch (e) { return null; } } }else if(window.XMLHttpRequest){ return new XMLHttpRequest(); }else{ return null; } } x=run(); function answer(i){ x.open('GET','?m='+i,false); x...
old-51 롸업(webhacking.kr) 문제 창이다. id와 pw를 제출하는 폼이 있다. Admin page
old-50 롸업(webhacking.kr) SQL Injection 문제이다. SQL INJECTION id : pw :
old-34 롸업(webhacking.kr) 문제에 접속하자마자 debug me라는 알림이 뜬다. var a=['RcOhTDV1Ew==','McOVwqpRBg==','c8K/w43DvcK8','SsOrTCF1CVDCgcKLEsKc','NsK/w4Bc','G1TDpwk=','AcKtwqfDlW7Dsw==','e3kkcQJfwoNFDEU9','QMOXDBo=','w5bCsWlh','eWY6bg8=','FnbDoEvDtl1LUkB7w4Q=','esOZTiPDsg==','bzfCkFfCtA==','ZmzDjHcn','PxLCm3LDvA==','IcKlVy9pw57DgMK3w6kmwpvCiUnDhcOKw4A=','LMKnwqECawEeEMOZQsK7wrLCscKpSG1AwqvDvjnDpMKhOSDCqQfDmVRowo1nwpzCh8OGc1vDv3cKVR/Cg..
old-33 롸업(webhacking.kr) wrong이라고 떠 있다. Challenge 33-1 view-source view-source로 확인한 코드이다. get이 hehe이면 Wrong이 안 뜬다. next를 눌렀더니 lv2.php로 이동된다. Challenge 33-2 view-source view-source를 했더니 아까랑은 다른 코드가 나온다. 이번에는 post방식의 변수 2개의 값을 조작해야 한다. import requests URL='https://webhacking.kr/challenge/bonus-6/lv2.php' cookies = {'PHPSESSID':'4hs6lrvp7mlk1ao5v3tijt8lb2'} data = {"post":"hehe","post2":"hehe2"} res = requests.post(URL, co..
old-32 롸업(webhacking.kr) 이름과 hit수가 랭킹으로 표시되어 있다. 이름을 누르면 투표가 되고 다시 이 페이지로 돌아온다. 다시 이름을 누르면 이렇게 뜬다. vote_check라는 쿠키로 투표 여부를 판단하는 거 같다. 이 쿠키를 제거하고 다시 투표하면 계속 투표를 할 수 있다. hit가 /100으로 표시가 되기 때문에 100을 넘어가면 뭐가 되나 싶어서 1등을 100이 넘을때까지 투표했는데 아무 일도 안 일어났다. 대체 뭘 어떻게 하라는건지 감이 안 잡혔는데 맨 아래에 1800등 쯤에 내 아이디가 있는게 보였다. 내가 1등이 되면 되는건가 싶어서 투표를 시키는 파이썬 코드를 작성하였다. import requests URL='https://webhacking.kr/challenge/code-5/?hit=bluesunset' co..
old-27 롸업(webhacking.kr) SQL Injection 문제라고 친절히 알려주고 있다. SQL INJECTION
old-26 롸업(webhacking.kr) 문제에 접속하면 그냥 view-source 하나만 덩그러니 있어서 바로 확인해보았다. view-source GET 방식으로 받아온 id의 urldecode 값이 admin이면 풀린다. 근데 preg_match 때문에 /admin/에 id가 들어있으면 안된다. admin을 url 인코딩 표로 보고 인코딩 된 값으로 바꾸면 %61%64%6d%69%6e 이렇게 나온다. 근데 이걸 url에 그대로 쳐도 자동으로 디코딩이 되면서 admin으로 바뀐다. %61%64%6d%69%6e 이 값을 한번 더 인코딩 해 보면 %2561%2564%256d%2569%256e 이걸 id로 넣어주면 풀린다.