분류 전체보기
-
[Clear] b01lers CTF 2023 warmup writeupCTF/b01lers CTF 2023 2023. 3. 20. 16:52
웹 카테고리의 warmup 문제이다. 주어진 URL로 접근하면 base64인코딩 된 값으로 추정되는 경로값이 있고, 소스코드에 debug.html 이 언급되어있다. debug.html을 base64 인코딩 처리하여 접근해보았다. app.py를 통해 rendering 테스팅을 한다고 하여 app.py 도 base64처리하여 접근해보았다. 서버의 소스코드가 노출되었다. from base64 import b64decode import flask app = flask.Flask(__name__) @app.route('/') def index2(name): name = b64decode(name) if (validate(name)): return "This file is blocked!" try: file = o..
-
[HTB] Help WriteupWargame/Hack The Box 2023. 3. 16. 23:15
서버에 대한 정보를 획득하기 위해 포트 스캐닝을 해보았다. nmap -sC -sS -sV -p- -O -o scanResult.txt 10.129.227.176 22, 80, 3000 포트가 오픈되어있음을 확인했다. 해당 포트에서의 취약점 존재 여부를 1차적으로 확인해봤다. nmap --script vuln 10.129.227.176 -p 22,80,3000 -o nmapVulnScanResult.txt -Pn 80포트에는 apache2 디폴트 페이지가 있었다. 그리고 /support/ 에는 HelpDeskZ 라는 서비스가 오픈되어있었다. searchsploit HelpDeskZ 해당 서비스에 대해 알려진 취약점이 있는지 확인해보았다. 아래와 같이 두 건이 있었다. 우선 첫 번째 파일업로드 취약점의 내용..
-
[HTB] Templated WriteupWargame/Hack The Box 2023. 3. 14. 17:03
문제 URL을 방문해보자. 문제 이름 및 Flask/Jinja2를 사용한다는 점에서 SSTI 관련 문제임을 유추 할 수 있다. 별다른 기능이 없어보이므로 SSTI 공격을 시도하기 위한 다른 기능을 찾기 위해 다른 경로에 접근을 시도해보다가 입력한 경로 정보가 응답 값에 그대로 반영됨을 알 수 있었다. 따라서 경로 값으로 Jinja2에서의 SSTI 값을 입력하니 유효함을 확인 할 수 있었다. SSTI 공격을 통한 RCE를 위해 아래 과정을 거쳐 시도해보았다. {{ 7*7 }} #49 {{ ''.__class__ }} # {{ ''.__class__.__mro__ }} #(, ) {{ ''.__class__.__mro__[1].__subclasses__() }} #[, , , , , , , , , , , ,..
-
Android 7 이상 버전에서 Burp Suite 인증서 설치하기Tips/Mobile 2023. 1. 27. 17:07
Android 7 환경부터 시스템 인증서 설치를 위해서는 일련의 추가 과정이 필요하다. (이전 처럼 진행 시 인증서 에러가 발생하며 통신이 되지 않는다.) 물론 SSL 피닝을 통해 통신 패킷을 잡을 수도 있지만, 에뮬레이터(Nox)의 루팅 온오프 기능을 통해 루팅되지 않은 환경에서 통신 패킷을 잡을 수 있는 셋팅이 꽤나 유용하게 쓰이곤 한다. 자주하지는 않는 작업이지만, 매번 할 때 마다 구글링하기 번거로워 정보 공유 겸 직접 기록하고자 해당 글을 작성하기로 하였다. 실습 환경은 Nox Android 9 (64bit) 에서 진행하였다. 1. "만료기간 365일 이하" 의 인증서 생성 *개인키 생성(BurpMobCA2023.key) openssl req -x509 -days 364 -nodes -newke..
-
-
-
-
XHR(XMLHttpRequest)에서의 CSRF? CORS?Research 2022. 11. 7. 23:32
특정 중요 로직에 대해서 CSRF 공격 가능 여부를 판단 하던 중, 특이하게 양호했던(?) 케이스이다. 우선 해당 케이스를 살펴보자. 현재 5건의 데이터가 있으며 그중 한 건을 삭제 시도해보자. 요청되는 패킷을 분석해보면, CSRF 검증을 하는 듯 하나 검증에 쓰일 것 같은 데이터를 삭제하고 Origin, Referer 등의 정보도 임의의 값으로 바꾸더라도 기능이 정상 실행됨을 알 수 있다. 따라서, CSRF 공격이 성공 할 수 있을 것이라 판단했고, 간단한 시나리오를 구축해서 테스트해봤다. 내용은 아래와 같다. 1. 공격자 개인 서버에 form 등으로 해당 로직을 요청하도록 하는 페이지 구현 2. 해당 기능 실행 권한을 가진 사용자(피해자) 에게 공격자 서버 접근 유도 3. 접근 시 공격자 권한으로 해..