안녕하세요 pgnsc 입니다.
시간이 날때마다 webhacking.kr 문제를 풀어보고 있는데 이게 쉬운게 아니네요 ㅋㅋ
힌트를 보실분은 아래 힌트를 눌러주세요
* 본인이 스스로 연구를 하셔야 실력향상이 됩니다.
한번더 생각하시고 아래를 읽어주세요
Source Code
$secret_key="????";
if(time()>1309064400) exit("오후 2시에 공개됩니다.");
if($_POST[pw])
{
if($_POST[pw]==$secret_key)
{
mysql_query("delete from challenge57msg");
@solve();
exit();
}
}
if($_GET[msg] && $_GET[se])
{
if(eregi("from|union|select|and|or|not|&|\||benchmark",$_GET[se])) exit("Access Denied");
mysql_query("insert into challenge57msg(id,msg,pw,op) values('$_SESSION[id]','$_GET[msg]','$secret_key',$_GET[se])");
echo("Done
");
}
?>message secret yes
no
Secret key :
phps
PHPS 를 눌러보면 다음과 같은 소스가 존재합니다.
POST형식으로 키값을 검사하고 맞다면 통과시키는 문제입니다.
처음에 저는 방향을 insert 문을 조작시키고 secret 키를 조작해서 인증하는건줄 알았는데 아니더군요
이제부터 직접 풀이하지 않겠습니다.
sleep 함수를 이용하시면 정말 딱 아실수 있습니다
감사합니다.
webhacking.kr 29번 (8) | 2012.12.05 |
---|---|
webhacking.kr 40번 (11) | 2012.11.29 |
Webhacking.kr 55번 중간 풀이. (10) | 2012.11.05 |
webhacking.kr 49번 write up (5) | 2012.11.05 |
Webhacking.kr 46번 write up (2) | 2012.11.04 |