[Webhacking.kr] old-47
Wargame/webhacking.kr
https://webhacking.kr/challenge/bonus-11/ 일단 그대로 send를 눌러보자. 메일이 보내졌다고 한다. 기능은 임의의 제목으로 메일을 보내는 것이 전부인 것 같다. 메일이면 SMTP를 사용할 것이고, 그러면 SMTP header injection이 가능할 것 같다. https://www.geeksforgeeks.org/what-is-smtp-header-injection/ 저 제목으로 메일을 보내면 SMTP 메시지는 아래와 같이 구성되어 있을 것이다. From: XXX@XXX.XXX To: XXX@XXX.XXX Subject: Flag of webhacking.kr old-47 chall FLAG{XXX} Subject 뒤에 개행을 하고 Cc: 를 넣으면 내 메일 주소도 참..
[Webhacking.kr] old-08
Wargame/webhacking.kr
https://webhacking.kr/challenge/web-08/ 접속한 user agent가 DB에 존재하면 SQL 쿼리가 id를 반환한다. id가 admin이면 문제가 풀린다. User agent가 DB에 존재하지 않으면 user agent, ip와 id(guest)를 DB에 추가한다. DB에 추가하는 쿼리에서 SQL injection이 가능하다. $agent를 AAAA', '', 'admin')#와 같이 조작하면 전체 쿼리는 insert into chall8(agent,ip,id) values('AAAA', '', 'admin')#','{$ip}','guest')가 되어, 주석 뒤쪽은 무시되고 user agent AAAA를 가지는 admin이 DB에 저장된다. 이제 다시 user agent를 ..
[Webhacking.kr] old-33
Wargame/webhacking.kr
https://webhacking.kr/challenge/bonus-6/ Stage 1 GET 메소드로 get이라는 변수에 hehe를 전달하면 다음으로 이동할 수 있다. # stage 1 url = 'https://webhacking.kr/challenge/bonus-6/' res = requests.get(url + '?get=hehe', cookies=cookies) $ python3 solve.py Challenge 33-1 view-source Next Stage 2 https://webhacking.kr/challenge/bonus-6/lv2.php POST 메소드로 post 변수에 hehe를, post2 변수에 hehe2를 전달하면 다음으로 이동할 수 있다. # stage 2 url += 'l..
[Webhacking.kr] old-21
Wargame/webhacking.kr
https://webhacking.kr/challenge/bonus-1/ Blind SQL injection 문제이다. 로그인을 시도할 때 나오는 결과는 다음의 세 가지가 있다. id: AAAA, pw: BBBB - login fail id: guest, pw: guest - login success id: AAAA, pw: 'or''=' - wrong password 추측해보자면, 아마 로그인에 성공했지만 실제 패스워드와 입력한 패스워드가 다르면 wrong password가 뜨는 것 같다. 이를 이용하여 blind SQL injection 공격이 가능하다. 아마도 admin의 패스워드를 구하면 될 것 같다. Check pw column name SQL 쿼리는 select id from user wher..
[Webhacking.kr] old-07
Wargame/webhacking.kr
https://webhacking.kr/challenge/web-07/ val 변수의 값이 SQL 쿼리에 들어가는데, 쿼리의 결과로 나오는 $data[0]의 값이 2이면 된다. 즉 lv가 2가 되도록 쿼리를 구성해야 한다. 2, -, +, from, _, =, 공백 문자, *, /는 필터링된다. 처음에 시도한 것은 나머지 연산이다. val에 5%4를 넣으면 결과가 1이 되어 Access_Denied가 뜨는데, 5%3을 넣으면 query error가 뜬다. 다음으로는 select를 이용해봤는데, val에 select(5%4)를 넣으면 결과가 1이 되어 Access_Denied가 뜨는데, select(5%3)을 넣으면 마찬가지로 query error가 뜬다. 그 뜻은 DB에 lv가 2인 데이터가 존재하지 않..
h0meb0dy_
'분류 전체보기' 카테고리의 글 목록 (42 Page)