






CSRF (Cross-Site Request Forgery)
: 크로스 사이트 요청 위조공격
- 목표: 사용자의 권한을 훔치지 않고, 그 권한으로 액션을 실행하는 것.
- 핵심: 웹 브라우저는 사용자가 로그인해둔 사이트(은행, 쇼핑몰 등)에 요청을 보낼 때, 인증 정보(쿠키)를 묻지도 따지지도 않고 자동으로 함께 보낸다.
- 공격: 공격자는 이 자동 전송되는 쿠키를 이용해, 피해자가 무심코 열어본 다른 웹페이지에 위장된 요청을 숨겨 놓는다.
내가 은행 앱에 로그인(쿠키 저장) 해 놓은 상태에서, 해커가 보낸 수상한 문자(악성 웹페이지)를 실수로 누르면, 내 은행 계좌로부터 해커에게 이체되는 요청이 나도 모르게 은행 서버로 보내지는 것과 같다.
PoC (Proof of Concept) 의 역할
PoC는 위 공격이 실제로 가능하다는 것을 가장 간단하게 보여주는 코드 조각이다.
- 주요 형태:
- <img src="악성 요청 URL"> 태그: 이미지를 로드하려는 것처럼 위장하여, 실제로는 서버에 악성 요청을 보낸다. 이미지의 src에 공격 대상 사이트의 비밀번호 변경 URL 등을 넣는다.
- 숨겨진 폼: 눈에 보이지 않는 폼을 만들고 자바스크립트로 자동 제출하게 한다.


<form action="http://192.168.16.48/profile.php" method="post" enctype="multipart/formdata">
이 코드가 초래하는 중요한 결과는 CSRF (크로스 사이트 요청 위조) 공격의 가능성이다.
- 만약 이 <form> 코드가 다른 웹사이트 (예: 공격자의 사이트)에 숨겨져 있고, 사용자에게 보이지 않게 자동 제출되도록 만들어진다면 (예: display:none; + 자동 제출), 이는 완벽한 CSRF PoC가 될 수 있다.
- 사용자가 이 폼을 열었을 때, 사용자의 브라우저는 **192.168.16.48**에 요청을 보내면서 **로그인 **를 자동으로 함께 전송한다.
- 만약 profile.php가 파일 업로드 기능을 통해 사용자의 프로필 사진을 변경하거나, 악의적인 파일을 업로드하여 ** (원격 코드 실행)**를 유발할 수 있는 취약한 스크립트라면, 이 $\text{PoC}$는 매우 심각한 공격을 초래할 수 있다.
결론적으로, 이 코드는 특정 내부 주소로 파일 업로드가 가능한 요청을 유도하는 강력한 도구가 될 수 있다.



단서를 더 이상 발견할 수 없어서 페이지를 조금 더 분석 해보기로했다.
ZAProxy 실행






ZAProxy에서 찾아봐도 더 이상의 단서가 발견할 수 없었음(gobuster/dirb 등)
다른 숨겨진 파일이 있는지 찾기 위해 Box에 접근해보기로 함
Box로 로그인하기 위한 계정과 비밀번호를 알 수 없으므로 초기화를 진행하기로함






Burp Suite 실행


데이터베이스의 구조(스키마) 정보를 파악하고, 취약점의 존재 여부를 확인하기 위해 sqlmap 명령어 실행
sqlmap: 취약점을 자동으로 탐지하고 악용하는 오픈 소스 침투 테스트 도구







# Walkthough 2
enter_network 페이지의 쿠키값을 조작하는 방법






'CTF' 카테고리의 다른 글
| [9월 25일] CTF_CyberSploit: 2 (0) | 2025.09.25 |
|---|---|
| [9월 25일] CTF_CyberSploit: 1 (0) | 2025.09.25 |
| [9월 24일] CTF_Corrosion (0) | 2025.09.24 |
| [9월 22일] CTF_Jetty (0) | 2025.09.24 |
| [9월 19일] CTF_Chronos: 1 (0) | 2025.09.19 |