Brutus 명령어
침투 테스트 및 보안 평가를 위한 종합 Brutus 다중 프로토콜 자격증 테스트 도구 명령어입니다.
| 명령어 | 설명 |
|---|---|
go install github.com/praetorian-inc/brutus@latest | Go를 통해 설치 |
| Download from GitHub Releases | 사전 빌드된 단일 바이너리 |
brutus --version | Brutus 버전 표시 |
brutus --help | 도움말 및 사용 가능한 명령 표시 |
chmod +x brutus | 다운로드한 바이너리를 실행 가능하게 만들기 |
기본 사용법
섹션 제목: “기본 사용법”| 명령어 | 설명 |
|---|---|
brutus ssh --host 192.168.1.1 | SSH 자격증 테스트 |
brutus ssh --host 192.168.1.1 -u admin -p passwords.txt | 사용자 및 단어 목록을 사용한 SSH |
brutus mysql --host 192.168.1.1 -u root | MySQL 자격증 테스트 |
brutus rdp --host 192.168.1.1 -u administrator | RDP 자격증 테스트 |
brutus smb --host 192.168.1.1 -u admin | SMB 자격증 테스트 |
brutus ftp --host 192.168.1.1 -u anonymous | FTP 자격증 테스트 |
지원되는 프로토콜
섹션 제목: “지원되는 프로토콜”| 프로토콜 | 설명 |
|---|---|
ssh | Secure Shell 인증 |
mysql | MySQL 데이터베이스 인증 |
postgresql | PostgreSQL 데이터베이스 인증 |
redis | Redis 인증 |
mongodb | MongoDB 인증 |
smb | Server Message Block |
rdp | Remote Desktop Protocol |
ftp | File Transfer Protocol |
telnet | Telnet 인증 |
vnc | VNC 인증 |
snmp | SNMP 커뮤니티 문자열 테스트 |
ldap | LDAP 인증 |
mssql | Microsoft SQL Server |
http-basic | HTTP 기본 인증 |
http-form | HTTP 양식 기반 인증 |
smtp | SMTP 인증 |
pop3 | POP3 이메일 인증 |
imap | IMAP 이메일 인증 |
cassandra | Cassandra 데이터베이스 인증 |
oracle | Oracle 데이터베이스 인증 |
자격증 옵션
섹션 제목: “자격증 옵션”| 플래그 | 설명 |
|---|---|
-u <user> | 단일 사용자명 |
-U <file> | 사용자명 단어 목록 파일 |
-p <pass> | 단일 암호 |
-P <file> | 암호 단어 목록 파일 |
-C <file> | 콤보 파일 (한 줄에 user:pass) |
--default-creds | 일반적인 기본 자격증 테스트 |
--empty-password | 빈 암호 테스트 |
--user-as-pass | 사용자명을 암호로 테스트 |
--reverse-user | 반대 사용자명을 암호로 테스트 |
연결 옵션
섹션 제목: “연결 옵션”| 플래그 | 설명 |
|---|---|
--host <ip> | 대상 호스트 IP 또는 호스트명 |
--port <port> | 사용자 정의 포트 (기본값 재정의) |
--hosts-file <file> | 대상 호스트 목록이 있는 파일 |
-t <threads> | 동시 스레드 수 |
--timeout <seconds> | 시도당 연결 타임아웃 |
--delay <ms> | 시도 간 지연 |
--retry <count> | 실패 시 재시도 횟수 |
--proxy <url> | 프록시를 통해 라우팅 |
출력 옵션
섹션 제목: “출력 옵션”| 플래그 | 설명 |
|---|---|
-o <file> | 파일에 결과 출력 |
--json | JSON 형식으로 출력 |
--json-pretty | 예쁘게 인쇄된 JSON 출력 |
--quiet | 상세 출력 억제 |
--verbose | 출력 상세 정보 증가 |
--no-color | 컬러 출력 비활성화 |
--found-only | 성공한 로그인만 표시 |
SSH별 옵션
섹션 제목: “SSH별 옵션”| 플래그 | 설명 |
|---|---|
--ssh-key <file> | SSH 개인 키로 테스트 |
--ssh-badkeys | 알려진 불량/기본 SSH 키 테스트 |
--ssh-agent | 키에 SSH agent 사용 |
--ssh-vagrant | Vagrant 불안전한 키 테스트 |
--ssh-key-passphrase <pass> | 암호화된 키의 암호 문구 |
파이프라인 통합
섹션 제목: “파이프라인 통합”| 명령어 | 설명 |
|---|---|
naabu -host 192.168.1.0/24 -p 22 -json | brutus ssh | naabu 포트 스캔 결과 파이프 |
fingerprintx -json | brutus auto | 지문에서 프로토콜 자동 감지 |
brutus ssh --json | jq '.[] | select(.success)' | jq로 성공한 로그인 필터링 |
echo '{"host":"192.168.1.1","port":22}' | brutus ssh | 단일 대상을 JSON으로 파이프 |
brutus ssh --json -o results.json | 파일에 JSON 결과 저장 |
고급 사용법
섹션 제목: “고급 사용법”| 명령어 | 설명 |
|---|---|
brutus ssh -t 50 --delay 100 | 속도 제한 테스트 (50 스레드, 100ms 지연) |
brutus auto --hosts-file targets.txt | 여러 대상 자동 감지 및 테스트 |
brutus http-form --url <url> --form-data "user=^USER^&pass=^PASS^" | HTTP 양식 무작위 대입 |
brutus http-basic --url <url> | HTTP 기본 인증 테스트 |
brutus ssh --default-creds --hosts-file iot-devices.txt | IoT 기본 자격증 스캔 |
기본 자격증 테스트
섹션 제목: “기본 자격증 테스트”| 명령어 | 설명 |
|---|---|
brutus ssh --default-creds | SSH 기본 자격증 테스트 |
brutus mysql --default-creds | MySQL 기본값 테스트 (root/blank 등) |
brutus postgresql --default-creds | PostgreSQL 기본값 테스트 |
brutus redis --default-creds | Redis 기본값 테스트 |
brutus snmp --default-creds | SNMP 커뮤니티 문자열 테스트 |
불량 키 테스트 (SSH)
섹션 제목: “불량 키 테스트 (SSH)”| 명령어 | 설명 |
|---|---|
brutus ssh --ssh-badkeys | 알려진 모든 불량 SSH 키 테스트 |
| Includes Rapid7 ssh-badkeys | 알려진 유출된 개인 키 |
| Includes HashiCorp Vagrant key | 기본 Vagrant 불안전한 키 |
| Keys compiled into binary | 외부 키 파일 불필요 |
brutus ssh --ssh-badkeys --hosts-file servers.txt | 배치 불량 키 테스트 |
안전성 및 속도 제한
섹션 제목: “안전성 및 속도 제한”| 플래그 | 설명 |
|---|---|
-t 1 | 단일 스레드 (가장 온화) |
--delay 1000 | 시도 간 1초 |
--max-attempts 3 | 호스트당 3회 실패 후 중지 |
--lockout-threshold 5 | 5회 잠금 감지 후 중지 |
--timeout 10 | 10초 연결 타임아웃 |
팁 및 모범 사례
섹션 제목: “팁 및 모범 사례”| 팁 | 설명 |
|---|---|
| Always have authorization | 권한 있는 시스템만 테스트 |
| Start with default creds | 초기 액세스에 가장 효과적 |
| Use rate limiting | 계정 잠금 트리거 방지 |
| Pipe from reconnaissance | naabu 및 fingerprintx와 체인 |
| Use JSON output | 보고를 위한 구조화된 데이터 |
| Test bad SSH keys | 잘못 구성된 서버에서 빠른 승리 |
| Check before brute forcing | 무작위 대입 전에 기본값 및 불량 키 시도 |
| Monitor for lockouts | 계정 잠금 응답 감시 |