Web Hacking/Webhacking.kr

[Webhakcing.kr] old-32 / Challenge 32

ruming 2021. 10. 10. 22:04

 

들어가면 랭킹이 보인다. 유저 이름을 클릭하면 투표가 되는데, 한번 더 클릭하면 이미 투표했다고 투표가 되지 않는다.

 

쿠키값을 확인해보면 투표여부를 체크하는 쿠키값이 있다.

이 값을 삭제하고 투표하면 다시 투표가 가능하다.

 

소스코드를 확인해 파라미터로 ?hit=닉네임을 보내면 투표가 되는 것을 확인했다.

 

자기 닉네임을 100번 투표하면 해결이 되는 것 같다. 자동화 스크립트를 이용하면 되겠다 생각했는데 쿠키값을 매번 삭제할 수가 있나 싶었다. 근데 그냥 쿠키값을 하나만 보내면 되는 것 같아 바로 짜봤다.

import requests

url = "https://webhacking.kr/challenge/code-5/?hit=닉네임"
cookies = {'PHPSESSID': '세션값'}

for i in range(0, 100):
    requests.get(url, cookies=cookies)

 

실행시켰더니 1위에 내 닉네임이 있는 걸 확인했고 문제를 해결할 수 있었다.

 

조금 노가다지만 쿠키값을 차단해 투표를 100번 하는 방법도 있다.

EditThisCookie라는 확장프로그램을 깔고 실행해

빨간색 금지 표시를 누르면 쿠키값을 차단할 수 있다.

그러면 다시 투표가 가능하니 100번 눌러서 투표하면 된다!