SearchSploit 열 시트
제품정보
SearchSploit는 ExploitDB의 명령행 검색 도구입니다. ExploitDB의 복사본을 가지고 어디로 갈 수 있습니다. SearchSploit는 현지에서 저장소의 체크 아웃 사본을 통해 자세한 오프라인 검색을 수행 할 수있는 힘을 제공합니다. 이 기능은 인터넷 연결이 제한될 수 있는 침투 테스트 참여 도중 특히 유용합니다 또는 웹 인터페이스에 의존 없이 수천의 악용을 통해 빨리 검색할 필요가 있을 때.
· Warning: SearchSploit는 시스템에 손상을 일으킬 수있는 실제 악용에 대한 액세스를 제공합니다. 시스템에 대한 이러한 악용만 사용하거나 테스트에 명시된 서면 허가를 가지고 있습니다. 악의적 인 사용은 지역 법률 및 규정을 위반 할 수 있습니다.
설치하기
Kali Linux 설치
카지노사이트
Ubuntu/Debian 설치
카지노사이트
수동 설치
카지노사이트
Docker 설치
카지노사이트
기본 사용
간단한 검색
카지노사이트
고급 검색 옵션
카지노사이트
CVE 및 취약점 검색
카지노사이트
날짜 기반 검색
카지노사이트
산출 체재 및 전시
산출 체재
카지노사이트
필터링 및 제한 결과
# Limit number of results
searchsploit apache|head -10
# Show only exploit IDs
| searchsploit apache | awk '\\\\{print $1\\\\}' | grep -E '^[0-9]+ |
### Search Result Analysis
```bash의 경우
# 총 결과
아파치 모듈 mod_wc
# 플랫폼별
apache _grep -c 리눅스
apache _grep -c 윈도우
# 본문내용
apache _grep -c 리모트
apache _grep -c 로컬
# 독특한 플랫폼
| 비밀번호 -j apache | jq -r '.RESULTS_EXPLOIT[]. 플랫폼 | 소요 | uniq -c의 |
# 독특한 저자 추출
| -j apache | jq -r '.RESULTS_EXPLOIT[]를 검색합니다. 작성자 | 소송 | uniq -c의 |
Exploit Management
Copying and Downloading Exploits
```bash의 경우
현재 디렉토리에 복사
조회 수 -m 50383
복사 여러 악용
조회 수 -m 50383,50384,50385
특정 디렉토리에 복사
searchsploit -m 50383 -o /tmp/exploits/
원본 파일명 복사
비밀번호 -m 악용/linux/local/50383.c
검색 결과에서 모든 악용을 복사
| -j apache | jq -r '.RESULTS_EXPLOIT[]를 검색합니다. EDB-ID | 헤드 -5 | xargs 검색 배포 - 분 |
일괄 복사 악용
| echo "50383,50384,50385" | tr ',''' | xargs -I {} searchploit -m {} |
### Viewing and Examining Exploits
```bash의 경우
# 사이트 맵
파일 업로드 -x 50383
# 기본 편집기에서 열기
조회 수 -e 50383
# 문법 강조 표시
Searchsploit -m 50383 && 고양이 50383.c|highlight --syntax=c
# 메타데이터 활용
| Searchploit -j apache | jq '.RESULTS_EXPLOIT[] | select(.["EDB-ID"] == "50383") 이름 * |
# 관련 제품
파일 업로드 -p 50383
Exploit Organization
```bash의 경우
조직 디렉토리 구조
mkdir -p 악용/{windows,linux,웹,모바일}
플랫폼에 의해 복사
| Searchploit --platform windows -j | jq -r '.RESULTS_EXPLOIT[].["EDB-ID"]' | head -10 | xargs -I {} searchploit -m {} -o exploit/windows/ |
유형에 의해 복사
| Searchploit --type webapps -j | jq -r '.RESULTS_EXPLOIT[].["EDB-ID"]' | head -10 | xargs -I {} searchploit -m {} -o exploit/web/ |
회사 소개
apache_jq -r '.RESULTS_EXPLOIT[]|"(.["EDB-ID"]),(.Title),(.Platform),(.Type)" > apache_exploits.csv
## Database Management
### Database Updates
```bash의 경우
# ExploitDB 데이터베이스 업데이트
비밀번호 ·
# 강제 업데이트 (local changes)
cd /opt/exploitdb && git 리셋 --hard && git 풀
# 신청없이 업데이트
CD /opt/exploitdb를 선택하십시오. && git fetch && git 상태
# 특정 지점을 업데이트
CD /opt/exploitdb를 선택하십시오. && git 잡아당기기 근원 주요
# 업데이트
Searchsploit - 통계
Database Information
```bash의 경우
Database 통계
Searchsploit - 통계
데이터베이스 경로 표시
비밀번호 --경로
데이터베이스 완전성 검사
비밀번호 --확인
데이터베이스 인덱스
비밀번호 --rebuild
쇼 버전 정보
비밀번호 --버전
공지사항
비밀번호 --작성
### Database Maintenance
```bash의 경우
# 임시 파일 정리
찾기 /opt/exploitdb -이름 "*.tmp" -delete
# 디스크 사용
뒤 -sh /opt/exploitdb
# 백업 데이터베이스
tar -czf 악용db_backup_$(일) +%Y%m%d).tar.gz /opt/exploitdb
# 백업에서 데이터베이스 복원
사이트맵 악용db_backup_20231201.tar.gz -C /
# 유지 후 데이터베이스 확인
비밀번호 --확인
Automation Scripts
Automated Vulnerability Assessment
```bash의 경우
!/bin/bash
SearchSploit 사용 자동화 취약점 평가
TARGET_LIST = $ 1 " OUTPUT_DIR="searchsploit_assessment_$(일) +%Y%m%d_%H%M%S)" REPORT_FILE="$OUTPUT_DIR/vulnerability_assesment_report.html"의 경우
[ -z "$TARGET_LIST" ]|[ ! -f "$TARGET_LIST" ]; 그 후
echo "사용: $0
mkdir -p "$OUTPUT_DIR"의
단일 대상을 평가하는 기능
엠에디터 플러그 인 참조:Earget_target 현지 목표 ="$1" Local target_dir=$OUTPUT_DIR/$(echo "$target"|tr '/'_')"
echo "[+] 분류: $target"
mkdir -p "$target_dir"의 경우
# Search for exploits
Searchsploit -j "$target" > "$target_dir/search_results.json"의 검색
if [ -s "$target_dir/search_results.json" ]; 다음 # Parse and analyze results python3 << EOF의 수입 json 수입 os 컬렉션 가져오기 defaultdict
검색 결과
open('$target_dir/search_results.json', 'r') 으로 f: 데이터 = json.load(f)
악용 = data.get('RESULTS_EXPLOIT', []) 쉘코드 = data.get('RESULTS_SHELLCODE', [])
인쇄 (f" [+] Found {len(exploits)} 악용 및 {len(shellcodes)} 쉘코드")
쉘코드를 사용하지 않는 경우: 인쇄 (f" [-] 발견되지 않음: $target") 출구(0)
Analyze 악
분석 = { 'target': '$target', 'total_exploits': len(exploits), 'total_shellcodes': len(shellcodes), 'platforms': defaultdict(int), 'types': defaultdict(int), 'years': defaultdict(int), 'severity_assessment': 'Unknown', 'high_priority_exploits': [] 이름 *
악용에 악용을 위해: 플랫폼 = exploit.get('Platform', 'Unknown') exploit_type = 악용.get('Type', 'Unknown') date = 악용.get('Date', '') title = 악용.get('Title', '').lower()
분석['platforms'][platform] += 1개 분석['types'][exploit_type] += 1개
날짜: 년 = date.split('-')[0] 분석['years'] += 1개
# Identify high-priority exploits
if any(keyword in title for keyword in ['remote', 'rce', 'privilege', 'escalation', 'buffer overflow'): 분석['high_priority_exploits'].append(exploit)
분류 severity
합계 = len(exploits) high_priority_count = len(analysis['high_priority_exploits']) remote_count = 분석['types'].get('remote', 0)
만약 high_priority_count > 5 또는 Remote_count > 3 : 분석[''severity_assesment'] = 'Critical 이름 * elif 높은_priority_count > 2 또는 Remote_count > 1개: 분석[''severity_assesment'] = 'high 이름 * elif 합계_exploits > 5개: 분석[''severity_assesment'] = 'Medium' 이름 * 다른 것: 분석['severity_assesment'] = '낮'
관련 상품
open('$target_dir/analysis.json', 'w') 으로 f: json.dump(analysis, f, indent=2, default=str)
인쇄 (f" [+] Severity 평가: {analysis['severity_assesment']}") 인쇄 (f" [+] 고급 악용: {high_priority_count}") EOF 정보
# Download high-priority exploits
if [ -f "$target_dir/analysis.json" ]; 다음 python3 << EOF의 수입 json
open('$target_dir/analysis.json', 'r') 으로 f: 분석 = json.load(f)
high_priority = analysis.get('high_priority_exploits', [])[:10] # 10에 제한
high_priority가 있다면: open('$target_dir/priority_exploits.txt', 'w') 으로 f: high_priority에서 악용을 위해: f.write(f"{exploit.get('EDB-ID', '')}\n") EOF 정보
# Download priority exploits
if [ -f "$target_dir/priority_exploits.txt" ]; 다음 읽기 동안 -r edb_id; 할 if [ -n "$edb_id" ]; 다음 | Searchploit -m "$edb_id" -o "$target_dir/" 2>/dev/null | | true | · 완료 < $target_dir/priority_exploits.txt" · ·
반환 0 이름 * 이쵸 " [-] 찾을 수 없음: $target" 반환 1 · 이름 *
종합적인 보고서를 생성하는 기능
생성하기_report() { echo "[+] 종합 평가 보고서 생성
python3 << EOF의 수입 json 수입 os 수입 glob datetime 가져오기 datetime 컬렉션 가져오기 defaultdict
모든 분석 데이터 수집
모든 것 = [] glob.glob에 있는 analysis_file ('$OUTPUT_DIR/*/analysis.json'): 태그 : open(analysis_file, 'r') 으로 f: 데이터 = json.load(f) all_analyses.append(데이터) 제외 : 계속하기
전체 통계 계산
합계 = len(all_analyses) total_exploits = sum(a.get('total_exploits', 0) 에 대한 all_analyses) total_shellcodes = sum(a.get('total_shellcodes', 0) 에 대한 all_analyses)
severity_counts = defaultdict(int) platform_counts = defaultdict(int) type_counts = defaultdict(int)
all_analyses의 분석 : severity_counts[analysis.get('severity_assesment', 'Unknown')] += 1개
플랫폼의 경우, analysis.get('platforms', {}).items(): platform_counts[플랫폼] += 사이트맵
tools.get('types', {}).items(): type_counts[exploit_type] += 사이트맵
HTML 보고서 생성
html_content = f"" " · DOCTYPE의 HTML> 한국어 <머리>
</머리> <체>
SearchSploit 취약점 평가 보고서
Generated: \{datetime.now().strftime('%Y-%m-%d %H:%M:%S')\}
확장 요약
<테이블>Risk 배포
플랫폼 배포
<테이블>개인 대상 평가
"""
개별 타겟 세부 정보 추가
정렬 분석 (all_analyses, key=lambda x: x.get('total_exploits', 0), reverse=True): severity = analysis.get('severity_assessment', 'Unknown').lower() 대상 = analysis.get('target', 'Unknown')
사이트 맵
\{target\}
Risk 레벨: \{analysis.get('severity_assessment', 'Unknown')\}
총 폭발: \{analysis.get('total_exploits', 0)\}
High-Priority Exploits: \{len(analysis.get('high_priority_exploits', [])\}
플랫폼 중단:
<테이블>"""
사이트 맵
</몸>