Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
GLUFS — 자동화된 포맷 문자열 취약점 분석 도구로, %s 또는 %p 지정자를 통해 스택, PIE, 카나리 누수를 발견하고 플래그 검색 기능을 제공합니다. | Kitploit
도구/GitHubGitHub/diego-altf4/glufs
Vulnerability AnalysisExploitationFuzzingBinary Exploitation
GitHubdiego-altf4/glufs

GLUFS

자동화된 포맷 문자열 취약점 분석 도구로, %s 또는 %p 지정자를 통해 스택, PIE, 카나리 누수를 발견하고 플래그 검색 기능을 제공합니다.

저장소 보기
27434년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유


Format String을 사용하여 누출(Leak) 얻기.

root@kitploit:~
                    .d8888b.       888       888     888   8888888888   .d8888b.  
                    d88P  Y88b     888       888     888   888         d88P  Y88b 
                    888    888     888       888     888   888         Y88b.      
                    888            888       888     888   8888888      "Y888b.   
                    888  88888     888       888     888   888             "Y88b. 
                    888    888     888       888     888   888               "888 
                    Y88b  d88P     888       Y88b. .d88P   888         Y88b  d88P 
                    "Y8888P88      88888888   "Y88888P"    888          "Y8888P"                                                    

                                           By: DiegoAltF4

소개

GLUFS는 포맷 문자열 취약점을 사용하여 누출(leaks)을 찾는 지루한 과정을 자동화합니다. 스택 누출, PIE 누출 및 카나리 누출을 찾을 수 있으며, 각 경우 누출을 제공하는 페이로드를 표시합니다. 또한, 누출에서 'flag' 문자열을 검색할 수 있는 모드가 포함되어 있습니다. 이 모드에서는 %s 또는 %p 지정자를 사용할 수 있습니다.

매개변수

매개변수정보
-b이 옵션을 선택하여 공격할 바이너리를 지정합니다.
-max최대 테스트 값을 지정합니다. 범위: (min, max). 기본값: 40
-min최소 테스트 값을 지정합니다. 범위: (min, max). 기본값: 1
-ip원격 서버의 IP를 지정합니다.
-port원격 서버의 포트를 지정합니다.
-flag검색할 플래그의 시작 문자열을 지정합니다.
-arch아키텍처(32 또는 64)를 설정합니다.
--s%p 대신 %s를 사용합니다.
--canary카나리 누출이 있는 위치를 찾습니다.
--leaks발견된 모든 누출을 출력합니다.
--piePIE 누출이 있는 위치를 찾습니다.
--stack스택 누출이 있는 위치를 찾습니다.
--v상세 모드를 설정합니다.

사용 예제

1️⃣ 첫 번째 예제 ~ TryHackMe 룸 pwn101

이 예제에서는 GLUFS를 사용하여 PIE 및 카나리 누출을 얻습니다.

예제로 사용할 바이너리는 TryHackMe 룸 pwn101의 챌린지 7에 해당하는 것입니다. TryHackMe 룸 pwn101.

-b 옵션을 사용하여 바이너리를 지정하고, -min 옵션으로 반복의 시작 값을, -max로 반복의 종료 값을 지정합니다. 또한 카나리와 PIE에 대한 정보를 얻고자 합니다.

root@kitploit:~
./glufs.py -b ./pwn107.pwn107 -min 5 -max 15 --pie --canary

image

데모:

asciicast

2️⃣ 두 번째 예제 ~ 247CTF Confused environment read

이 예제에서는 GLUFS를 사용하여 플래그를 얻습니다.

해결할 챌린지는 247CTF 플랫폼의 Confused environment read입니다.

이 예제에서는 바이너리를 사용하지 않습니다. IP와 포트만 있습니다. 따라서 -ip 옵션으로 주소를, -port로 포트를, -flag로 찾을 플래그의 시작을 지정합니다. 또한 바이너리가 없으므로 아키텍처를 지정해야 하며, 이 경우 x86-64(-arch 64)입니다. 또한 -min으로 반복 시작을, -max로 반복 종료를 지정합니다. 또한 -s 옵션을 사용하여 %p 대신 %s를 사용합니다.

root@kitploit:~
./glufs.py -ip 3bcbadabd1a7e914.247ctf.com -port 50387 -flag 247CTF -arch 64 -min 1 -max 200 --s

image

데모:

asciicast

3️⃣ 세 번째 예제 ~ PicoCTF flag leak

이 예제에서는 GLUFS를 사용하여 플래그를 얻습니다.

해결할 챌린지는 PicoCTF 플랫폼의 flag leak입니다.

이 예제에서는 -ip 옵션으로 서버 주소를, -port로 서버 포트를, -b로 바이너리를, -flag로 플래그의 시작을 지정하고, 마지막으로 -min과 -max로 반복의 시작과 끝을 지정합니다. --s 옵션을 지정하지 않으면 기본적으로 %p 형식이 사용됩니다.

root@kitploit:~
./glufs.py -ip saturn.picoctf.net  -port 50563 -b ./vuln  -flag picoCTF -min 20 -max 200

image

데모:

asciicast

설치:

root@kitploit:~
git clone https://github.com/Diego-AltF4/GLUFS.git
cd GLUFS/
pip3 install -r requirements.txt
chmod +x ./glufs.py 

구성:

코드를 수정하여 바이너리/챌린지에 맞게 조정하는 것이 매우 중요합니다. 이를 위해 코드에는 두 개의 구분된 섹션이 있으며, 포맷 문자열 누출을 얻고 페이로드를 보낼 시기를 구성하기 위해 변경해야 합니다.

예시: 위에서 설명한 picoCTF 챌린지의 경우 다음 구성이 사용됩니다:

root@kitploit:~
#######################################################################
#      This is the part that you must modify to fit your binary.      #
#######################################################################
p.sendlineafter(b'>>', payload)
p.recvuntil(b'-')
leak = p.recv().strip(b'\n')
#print(leak) ## For debugging errors
#######################################################################	
도구 다운로드