
Rust로 작성된 빠른 스테가노그래피 무차별 대입 도구로, CTF에 유용합니다.
stegbrute는 Rust로 작성된 빠른 스테가노그래피 무차별 대입 도구입니다.
Stegbrute는 steghide 없이 실행할 수 없습니다! steghide를 설치하려면 다음을 실행하세요:
apt-get install -y steghide
데비안 계열 배포판이 아닌 경우 steghide 웹사이트에서 다운로드할 수 있습니다.
stegbrute는 다양한 방법으로 설치할 수 있습니다:
cargo (Rust 패키지 관리자)를 통해
cargo가 없으면 apt를 통해 설치하거나 Rust 언어를 다운로드하여 설치할 수 있습니다.
cargo install stegbrute
이 방법은 모든 플랫폼에서 작동합니다
우분투/칼리 또는 기타 데비안 계열 배포판을 사용 중이라면 릴리즈 섹션에서 .deb 파일을 찾아 다운로드한 후 압축을 풀고 실행할 수 있습니다.
wget https://github.com/R4yGM/stegbrute/releases/download/0.1.1/stegbrute_0.1.1_amd64.deb &&
dpkg --install stegbrute_0.1.1_amd64.deb
docker가 설치되어 있지 않다면 공식 가이드를 참고하세요.
먼저 docker 이미지를 (단 4.93 MB) docker 레지스트리에서 가져와야 합니다. 여기에서 확인할 수 있습니다. 이미지를 가져오지 않으려면 저장소를 클론한 후 Dockerfile로 이미지를 빌드할 수도 있습니다.
docker pull r4yan/stegbrute:latest
또한 'latest' 대신 stegbrute 버전을 지정하여 다른 이미지를 가져올 수도 있습니다. 예:
docker pull r4yan/stegbrute:0.1.0
이미지를 가져오지 않으려면 여기에서 stegbrute Dockerfile을 다운로드/복사한 후 Dockerfile로 이미지를 빌드하면 됩니다.
그런 다음 컨테이너를 실행하려면 먼저 컨테이너와 파일을 공유할 볼륨을 생성해야 합니다.
docker volume create --name stegbrute_data
그런 다음 stegbrute에 사용할 파일을 볼륨 폴더(보통 /var/lib/docker/volumes/stegbrute_data/_data)로 이동하거나 복사합니다. 간단히 다음과 같이 수행합니다.
cp wordlist.txt /var/lib/docker/volumes/stegbrute_data/_data && cp file.jpg /var/lib/docker/volumes/stegbrute_data/_data
이제 stegbrute를 실행합니다.
docker run -v stegbrute_data:/stegbrute_data -it --rm --name stegbrute r4yan/stegbrute:latest <options>
<options>를 stegbrute에 전달할 옵션/인자로 바꾸세요.
모든 작업을 완료하면 새 업데이트나 기능이 있을 때만 이미지를 다시 가져오거나 빌드하면 됩니다.
결과는 항상 볼륨 내에 저장하고 컨테이너에 저장하지 마세요. 그렇지 않으면 결과가 삭제됩니다! 다음 옵션을 추가하여 저장할 수 있습니다: -x /$VOLUME_NAME/results.txt 또는 --extract-file /$VOLUME_NAME/results.txt
이 옵션을 추가하고 모든 작업을 올바르게 수행했다면 각 공격이 끝난 후 /var/lib/docker/volumes/stegbrute_data/_data 폴더에서 결과를 찾을 수 있습니다.
이 방법은 모든 플랫폼에서 작동합니다
이미 컴파일된 프로그램을 다운로드하여 실행할 수도 있습니다. 예:
wget https://github.com/R4yGM/stegbrute/releases/download/0.1.1/stegbrute && chmod +x stegbrute
mv stegbrute /usr/local/bin/
stegbrute는 사용이 매우 간단하며 다양한 옵션을 제공합니다. -h 또는 --help 옵션으로 프로그램 도움말을 볼 수 있습니다.
============================================================
____ _ ____ _
/ ___|| |_ ___ __ _| __ ) _ __ _ _| |_ ___
\___ \| __/ _ \/ _` | _ \| '__| | | | __/ _ \
___) | || __/ (_| | |_) | | | |_| | || __/
|____/ \__\___|\__, |____/|_| \__,_|\__\___|
|___/
StegBrute v0.1.1 - By R4yan
https://github.com/R4yGM/StegBrute
StegBrute 0.1.1
R4yan <[email protected]>
스테가노그래피 무차별 대입 도구
사용법:
stegbrute [FLAGS] [OPTIONS] --file-name <파일명> --wordlist <단어목록>
FLAGS:
-h, --help 도움말 출력
-V, --version 버전 정보 출력
-v, --verbose 프로그램의 모든 시도를 표시
OPTIONS:
-x, --extract-file <추출파일> 결과를 저장할 파일 경로 [기본값: stegbrute_results.txt]
-f, --file-name <파일명> 크랙할 파일 경로
-t, --threads <스레드> 파일을 무차별 대입할 스레드 수 [기본값: 3]
-w, --wordlist <단어목록> 단어목록 파일 경로
예를 들어:
옵션:
-x 또는 --extract-file <파일명>을 사용하면 추출된 데이터의 결과가 지정된 파일명에 저장됩니다. 파일을 지정하지 않으면 stegbrute는 결과를 ./stegbrute_results.txt 파일에 저장합니다.
-t 또는 --threads <스레드_수>를 사용하면 동시에 파일을 무차별 대입하는 프로그램 수가 설정됩니다. 스레드 수를 늘린다고 항상 더 빨리 실행되는 것은 아니며, 머신이 처리할 수 있는 스레드 수에 따라 다릅니다.
-f 또는 --file-name <파일명>은 stegbrute가 공격할 파일 이름입니다. 지원되는 형식은 JPEG, BMP, WAV 또는 AU 중 하나여야 합니다.
-w 또는 --wordlist <단어목록>은 stegbrute가 암호를 한 줄씩 읽어 크랙하려는 파일에 시도할 파일입니다. 단어목록이 없다면 예를 들어 rockyou.txt를 설치할 수 있습니다.
3개의 스레드를 사용한 다양한 단어목록에 대한 stegbrute 벤치마크
| 단어목록 암호 수 | 시간 |
|---|---|
| 100 | 841.12ms |
| 1000 | 8.57s |
| 10000 | 77.79s |
| 100000 | 775.93s |