목표 : CR-LF (개행) Injection
음 문제가 다 똑같이 생겼다 소스부터 본다
<html>
<head>
<title>Challenge 38</title>
</head>
<body>
<h1>LOG INJECTION</h1>
<form method=post action=index.php>
<input type=text name=id size=20>
<input type=submit value='Login'>
</form>
<!-- <a href=admin.php>admin page</a> -->
</body>
</html>
PHP
복사
admin page가 주석으로 있다고 한다
들어가보자
admin으로 로그인하라고 한다. 각종 많은 시도 로그가 남아있다
php 코드도 별반 다른 내용은 없다.
<html>
<head>
<title>log viewer</title>
</head>
<body>
<h1>log viewer</h1>
<p>You must logged as "admin"</p>
59.6.237.201:1=1<br>
59.6.237.201:2=2<br>
59.6.237.201:? 1=1<br>
59.6.237.201:' 1=1<br>
14.48.158.219:poset<br>
210.180.194.253:59.6.237.201:1=1<br>
210.180.194.253:59.6.237.201:2=2<br>
210.180.194.253:59.6.237.201:? 1=1<br>
210.180.194.253:59.6.237.201:' 1=1<br>
210.180.194.253:14.48.158.219:poset<br>
210.180.194.253:namse<br>
211.182.230.53:parkde0207<br>
<br>
</body>
</html>
PHP
복사
다시 메인 페이지로 돌아가자
남들이 다하는 인젝션 나도 해본다.
내 로그도 추가된다.
보니 IP:LOG 형식이다.
admin을 그냥 입력하면 필터링한다
개행 방식으로 받으니 admin을 한 줄 띄우고 넣으면 되지 않을까 CR-LF Injection을 시도한다.
guest\r\n1.1.1.1:admin
이런식으로 입력해보자
\r\n 패킷 값을 넘겨주기보다 그냥 개행을 입력하는 방법으로는 입력 칸을 textarea로 바꿔버리면 된다
(이게 안되면 Burp Suite를 쓰는 게 깔끔하다)
입력하고 다시 admin.php 페이지로 가보자