반응형


Path Truncation 문제를 풀어보겠습니다. 관리자 페이지에 접근하라는 문제인 것 같습니다.



우선, 문제에 들어가면 [Home] 버튼과 [Administration] 버튼이 보입니다.


관리자 페이지에 접근을 해야 되므로 [Administration] 버튼을 눌러보겠습니다.



[Administration] 버튼을 누르면 admin.html URL로 이동되는 것을 알 수 있습니다.


하지만, 403 Forbidden 에러가 뜨는군요. 권한체크를 하는 것 같습니다.



다시 메인 페이지로 돌아가서 이번에는 [Home] 버튼을 눌러보았습니다.


URL 파라미터가 index.php?page=home 형식으로 전송되는 것을 알 수 있습니다. LFI 공격이 가능할 것 같아 보입니다.


그래서, Path Truncation에 대해 찾아보았습니다.


Path Truncation은 LFI 공격 기법 중의 하나로 php limits을 우회하는 방법입니다.

PHP 5.3 하위의 버전에서 나타나느 취약점으로, 파일을 열기 전 파라미터 값의 4096 byte 이상의 길이는 잘려 그 이후의 값들은 버려지게 됩니다.

따라서, 후행 슬래시로 4096 byte 이상의 길이를 삽입하면 하드코딩된 파일 확장명을 우회할 수 있습니다.

GET vulnerable.php?filename=../../../etc/passwd/././././././././/././././././././././[ and so on ] HTTP/1.1


출처 : https://medium.com/bugbountywriteup/cvv-1-local-file-inclusion-ebc48e0e479a



그래서, page=home/../admin.html/./././././././././.././././.././././.././././.././././.././././.././././.././././.././././.(4096 byte 이상...)를 삽입 시도하였습니다.



하지만 별다른 반응이 없어 보였습니다. 이유를 찾다가 아래 문장을 발견하였습니다.


if the truncation can't work just add "x/../" after the file name so it will be like this : "x/../index.php"


출처 : https://hackingparadisesn.blogspot.com/2015/05/introduction-to-local-file-inclusion.html



그래서 home 대신 x(타 임의의 문자 가능)를 삽입 후 ../admin.html에 접근 시도하였더니!!



FLAG 값을 획득할 수 있었습니다.

반응형

'Study > Wargame' 카테고리의 다른 글

[root-me] Javascript - Authentication  (0) 2019.04.15
[root-me] HTML - disabled buttons  (0) 2019.04.15
[root-me] SQL Injection - GBK  (0) 2019.02.21
[root-me] Server-side Template Injection  (0) 2019.02.08
[root-me] SQL injection - string  (0) 2019.02.07

+ Recent posts

반응형
반응형