SSH 사전 공격을 위한 Hydra 설정
이 단계에서는 이전 단계에서 생성한 사용자 이름 및 패스워드 목록을 사용하여 SSH 사전 공격을 수행하도록 Hydra 를 구성합니다. 사전 공격은 Hydra 가 단어 목록에서 가능한 모든 조합을 체계적으로 시도하여 유효한 자격 증명을 찾는 방법입니다.
- 먼저, 프로젝트 파일이 저장된 올바른 작업 디렉토리에 있는지 확인합니다.
cd ~/project
이 명령은 현재 디렉토리를 작업할 프로젝트 폴더로 변경합니다.
- Hydra 버전을 확인하여 Hydra 가 설치되었는지 확인합니다.
hydra -v
설치된 Hydra 버전을 보여주는 출력을 볼 수 있습니다. 이는 Hydra 가 사용할 준비가 되었음을 확인하고 나중에 문제가 발생할 경우 문제 해결에 도움이 됩니다.
- 로컬 SSH 서버의 IP 주소가 포함된
target.txt라는 대상 파일을 만듭니다.
echo "127.0.0.1" > target.txt
이 랩 환경에서는 자체 머신을 대상으로 테스트하므로 127.0.0.1(localhost) 을 대상으로 사용합니다.
- SSH 공격에 대한 기본 Hydra 명령 구조를 이해합니다.
hydra -L <username_list> -P <password_list> <target> ssh
이는 최소 필수 매개변수를 보여줍니다: 사용자 이름 목록 (-L), 패스워드 목록 (-P), 대상 IP/호스트 이름 및 공격할 서비스 (ssh).
- 파일을 사용하여 실제 Hydra 명령을 준비합니다 (하지만 아직 실행하지 마십시오).
hydra -L usernames.txt -P passwords.txt -t 4 -vV 127.0.0.1 ssh
여기서:
-L은 사용자 이름 목록 파일 (usernames.txt) 을 지정합니다.
-P는 패스워드 목록 파일 (passwords.txt) 을 지정합니다.
-t 4는 병렬 연결 수를 설정합니다 (더 빠른 테스트를 위해 4 개의 스레드).
-vV는 자세한 출력을 활성화하여 공격 진행 상황을 볼 수 있도록 합니다.
- 다음 단계에서 실행하기 위해 이 명령을 스크립트 파일에 저장합니다.
echo 'hydra -L usernames.txt -P passwords.txt -t 4 -vV 127.0.0.1 ssh' > attack.sh
chmod +x attack.sh
스크립트를 생성하면 공격을 다시 실행하기가 더 쉬워지고 명령을 잘못 입력하는 것을 방지할 수 있습니다. chmod 명령은 스크립트를 실행 가능하게 만듭니다.
- 진행하기 전에 필요한 모든 파일이 있는지 확인합니다.
ls -l usernames.txt passwords.txt target.txt attack.sh
이 최종 확인을 통해 사용자 이름 목록, 패스워드 목록, 대상 파일 및 공격 스크립트 등 필요한 모든 파일이 있는지 확인할 수 있습니다.