[2025 Hacksium Busan 예선] nonsense
카테고리 Crypto 문제 분석 및 풀이 AES CTR 모드를 사용해 메시지를 암호화하는데, 두 번의 암호화 과정에 동일한 key와 nonce를 사용하여 암호화한다. key = get_random_bytes(16) nonce = get_random_bytes(8) secret_message = gen_random_string(16).encode() ...
카테고리 Crypto 문제 분석 및 풀이 AES CTR 모드를 사용해 메시지를 암호화하는데, 두 번의 암호화 과정에 동일한 key와 nonce를 사용하여 암호화한다. key = get_random_bytes(16) nonce = get_random_bytes(8) secret_message = gen_random_string(16).encode() ...
카테고리 Web 문제 분석 및 풀이 임의 파일을 업로드할 수 있는 웹페이지이다. 하지만 파일 내용에 숫자와 알파벳이 포함되지 않는 파일만 업로드할 수 있다. 아래와 같은 php 파일을 업로드한다. <?= $_="{"; $_=($_^"<").($_^">;").($_^"/"); ${'_'.$_}["_"](${'_'.$_}["__"]); ...
카테고리 Pwnable 문제 분석 및 풀이 GLibc의 stdout에 최대 0xe0바이트만큼을 입력한 후 puts 함수가 호출된다. stdout을 원하는 대로 덮어쓸 수 있으므로 FSOP를 이용한다. GLibc 2.35버전이므로, 함수 포인터 호출이 대부분 제거된 상태이다. 따라서 _IO_FILE의 _wide_data와 _IO_wide_jumps를 ...
카테고리 Pwnable 문제 분석 및 풀이 Command에 “upload”를 입력하면 파일을 업로드할 수 있고, “download”를 입력하면 파일을 다운로드할 수 있다. 파일을 다운로드하기 위해 파일의 이름을 입력할 때, 검증이 없기 때문에 Path Traversal이 발생할 수 있다. 파일 이름을 입력할 때 flag 파일의 경로를 입력하면 플래그...
함수 wWinMain 함수 int APIENTRY wWinMain(_In_ HINSTANCE hInstance, // 현재 실행 중인 애플리케이션의 인스턴스 핸들 _In_opt_ HINSTANCE hPrevInstance, // 이전 인스턴스 핸들 (현재는 사용되지 않으며 항상 NULL이 전...
문제 링크 https://dreamhack.io/wargame/challenges/433 문제 설명 Exercise: XSS Filtering Bypass에서 실습하는 문제입니다. 문제 분석 /flag 엔드포인트에서 POST 요청을 보내면, 셀레늄을 이용해 /vuln 엔드포인트에 사용자가 지정한 param 파라미터를 가지고 GET 요청을 전송한다....
문제 링크 https://dreamhack.io/wargame/challenges/434 문제 설명 Exercise: XSS Filtering Bypass의 패치된 문제입니다. 문제 분석 /flag 엔드포인트에서 POST 요청을 보내면, 셀레늄을 이용해 /vuln 엔드포인트에 사용자가 지정한 param 파라미터를 가지고 GET 요청을 전송한다. 이...
XSS란? XSS(Cross-Site Scripting)는 공격자가 공격하려는 사이트에 스크립트를 삽입하는 기법이다. 사이트가 공격당한 사이트에 접속하면, 공격자가 삽입한 스크립트가 실행된다. 이 과정에서 쿠키, 세션 정보 등 정보가 탈취될 수 있다. XSS의 종류로는 다음과 같다. Stored XSS: 공격자가 악성 스크립트를 웹 ...
FSOP(File Stream Oriented Programming)은 C 표준 라이브러리의 파일 I/O 스트림 내부 구조를 악용하여 프로그램의 제어 흐름을 가로채는 익스플로잇 기법이다. C언어의 파일 I/O 및 스트림 관리 - _IO_FILE C언어에서 FILE 객체는 파일 작업을 위한 추상화 계층 역할을 한다. 표준 스...
문제 링크 https://dreamhack.io/wargame/challenges/56 문제 설명 Description 이 문제는 서버에서 작동하고 있는 서비스(iofile_vtable)의 바이너리와 소스 코드가 주어집니다. 프로그램의 취약점을 찾고 익스플로잇해 get_shell 함수를 실행시키세요. 셸을 획득한 후, “flag” 파일을 읽어 워게...