
오픈 소스 올인원 CLI 도구로 침투 테스트를 반자동화합니다.
Penta는 Python3를 사용한 침투 테스트 반자동화 도구입니다. 특정 서버에서 발견된 취약점 정보를 추출하는 고급 기능을 제공합니다. 현재 취약점 DB를 사용한 스캐닝 시스템을 개발 중입니다.



penta는 다음 패키지가 필요합니다.
Python 패키지 종속성을 해결합니다.
$ pipenv install
pipenv가 싫다면
$ pip install -r requirements.txt
$ pipenv run start <옵션>
또는
$ python penta/penta.py <옵션>
$ pipenv run start -h
usage: penta.py [-h] [-v] [--proxy PROXY]
Penta는 침투 테스트 반자동화 도구입니다
선택적 인수:
-h, --help 도움말 메시지를 표시하고 종료합니다
-v, --verbose 로깅 수준을 높입니다
--proxy PROXY 프록시[IP:PORT]
======= 메인 메뉴 ===========================================
> IP 기반 스캔 메뉴
VulnDB 구축 메뉴
[종료]
======= 침투 테스트 메뉴 목록 ===================================
> 포트 스캔
Nmap 및 취약점 스캔
HTTP 옵션 메소드 확인
DNS 서버 정보 수집
Shodan 호스트 검색
익명 FTP 연결
SSH 무차별 대입 연결
Metasploit 프레임워크
대상 호스트 변경
[돌아가기]
포트 스캔
대상 호스트의 포트 상태를 확인하고 활성 서비스를 식별합니다.
Nmap
Nmap을 사용하여 추가 수단으로 포트를 확인합니다.
HTTP 옵션 메소드 확인
대상 호스트에 대한 메소드(예: GET, POST)를 확인합니다.
DNS 서버 정보 수집
DNS whois 정보와 유용한 레코드를 표시하고 검색합니다.
Shodan 호스트 검색
Shodan에서 호스트 서비스 정보를 수집합니다.
기능을 활성화하려면 Shodan API 키를 요청하세요.
익명 FTP 연결
포트 21에서 익명 액세스가 활성화되어 있는지 확인합니다.
FTP 사용자는 일반 텍스트 로그인 프로토콜(일반적으로 사용자 이름 및 비밀번호 형식)을 사용하여 인증할 수 있지만, 서버가 허용하도록 구성된 경우 익명으로 연결할 수 있습니다. 관리자가 익명 로그인으로 FTP 연결을 허용한 경우 누구나 서버에 로그인할 수 있습니다.
SSH 무차별 대입 연결
무차별 대입으로 스캔할 SSH 연결을 확인합니다.
사전 데이터는 data/dict에 있습니다.
Metasploit 프레임워크 [자동 스캔은 향후 작업]
열린 포트에서 유용한 msf 모듈을 확인합니다.
모듈 DB는 data/msf/module_list.db에 있습니다.
현재 모듈 목록 DB를 구축했으며, 이를 사용하는 방법으로 전환 중입니다.
======= 보고서 메뉴 목록 ====================================
> 일일 보고서: CVE, EDB, MSF...
보고서 보기
CVE 가져오기
Exploit 가져오기
Msf 모듈 가져오기
DB 메뉴
[돌아가기]
일일 보고서 생성
변경된 CVE, Metasploit 프레임워크 모듈 및 최신 ExploitDB 기록을 온라인으로 검색하여 터미널에 출력합니다.
보고서 보기
정보를 검색하지 않고 로컬 DB vuln_db.sqlite3에 기록된 취약점 정보를 터미널에 출력합니다.
CVE 가져오기
NVD 데이터 피드에서 지정된 연도의 CVE를 다운로드하여 DB에 기록합니다.
Exploit 가져오기 (실험 기능)
온라인 사이트에서 ExploitDB의 익스플로잇 정보를 검색합니다.
Metasploit 프레임워크 모듈 가져오기
msf의 각 모듈에는 하드코딩된 CVE 정보 및 스캔에 유용한 기타 정보가 포함되어 있습니다. 이 기능은 각 모듈에 기록된 정보를 온라인 및 오프라인으로 집계하여 CVE 및 EDB와의 연관성을 제공합니다.
penta에 대해 더 궁금한 점이 있다면 wiki가 매우 상세하며 penta를 자세히 설명합니다.
Penta는 MIT 라이선스 하에 배포됩니다. LICENSE를 참조하세요.