wonder

정보보안 스터디 - 28주차 4일 - 파일업로드, XXE PortSwigger lab 본문

Red Team/프로젝트 관련

정보보안 스터디 - 28주차 4일 - 파일업로드, XXE PortSwigger lab

wonder12 2023. 4. 24. 00:55

 

☞ 파일업로드

 

로드밸런서에 의해 다르게 설정된 추가 서버에 요청갈수도있습니다. 그래서 반응이 달라질 수 있습니다.
.php5, .shtml executable 실행가능 파일.
파일 확장자를 강력하게 막고 있다면 overriding 이 가능할 수 있습니다.
같은이름으로 올리면 수정 되는지 > .htaccess config 파일 변경 >  jsp,html 등 수정



configuration on IIS servers using a web.config

/.htaccess
보통 403 forbidden로 나옵니다.

exploit.php.jpg >> php로도 해석될 수 있습니다.
exploit.jpg.php >> jpg 있는지만 검사하는 경우 또는 첫번쨰 파일 확장자만
exploit.php. >> Some components will strip or ignore trailing whitespaces, dots
Try using the URL encoding (or double URL encoding) for dots, forward slashes, and backward slashes.


바로 디코딩안되고 server-side 측에서 나중에 디코딩될 때
exploit%2Ephp 가능
exploit%2Ejpg%2Ephp (url encoding)도 시도해볼 만 합니다.
IIS의 경우 null처리같은 것도 해볼만합니다. exploit.asp;.jpg or exploit.asp%00.jpg

  multibyte unicode characters. converted to null bytes and dots after unicode conversion
xC0 x2E, xC4 xAE or xC0 xAE may be translated to x2E

 요즘은 거의 프레임워크를 써서 파일업로드 대응하기 때문에, 직접 짜는 것보단 보안이 강합니다.
파일시스템말고 임시파일에 업로드합니다. 안전하면 실제 위치에 도착.

메인파일시스템에 업로드하고 안전하지 않으면 지워버리는데 그 찰나를 노려 실행하는 경우도 있습니다.

파일 이름을 ../로 하는 방법.
임시폴더는 몰라도 실제 폴더는 적용될 수도 있습니다.

파일업로드 떄 웹쉘 대신 파일 콘텐츠 읽는 소스코드
<?php echo file_get_contents('/path/to/target/file'); ?>

 

XML-based formats are office document formats like DOCX and image formats like SVG.
이걸로 SSRF 연계가능합니다.

 

 

 XXE

대부분 application/x-www-form-urlencoded 같이 기본 content-type씁니다.
>>text/xml 수정이 가능하면 시도해서 SSRF합니다.

 

조금 어려운 부분입니다.
it is sufficient to disable resolution of external entities and disable support for XInclude.

Hex Code: &#x25; %입니다.

 


 SQLi

SELECT * FROM v$version

버전 확인

 

 

 

 

Comments