콘텐츠로 이동

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 " echo "Target 목록 파일은 라인 당 하나의 소프트웨어 / 서비스를 포함해야합니다" echo "예 : 'Apache 2.4.7', 'Windows 10', 'PHP 7.4' 출구 1 ·

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 취약점 평가 보고서

</머리> <체>

SearchSploit 취약점 평가 보고서

Generated: \{datetime.now().strftime('%Y-%m-%d %H:%M:%S')\}

확장 요약

<테이블> 미터 값 대상\{total_targets\} 총 폭발 발견\{total_exploits\} 총 쉘 코드 Found\{total_shellcodes\} 전략적 위험 대상\{severity_counts.get('Critical', 0)\} 고위험 대상\{severity_counts.get('high', 0)\} 중간 위험 대상\{severity_counts.get('Medium', 0)\} 낮은 위험 대상\{severity_counts.get('Low', 0)\}

Risk 배포

플랫폼 배포

<테이블> 플랫폼 폭발성 조사 """ 플랫폼의 경우 정렬 (platform_counts.items(), key=lambda x: x[1], reverse=True)[:10]: html_content += f" \{platform\}\{count\}\n" html_content += ""

개인 대상 평가

"""

개별 타겟 세부 정보 추가

정렬 분석 (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', [])\}

플랫폼 중단:

<테이블> 플랫폼Count """ 플랫폼의 경우, analysis.get('platforms', \{\}).items(): html_content += f" \{platform\}\{count\}\n" html_content += ""

"""

사이트 맵

</몸> """

open('$REPORT_FILE', 'w') 으로 f: f.write(html_content)를

인쇄 (f" [+] 생성된 종합 보고서: $REPORT_FILE) EOF 정보 이름 *

CSV 요약 생성 기능

생성_csv_summary() { echo "[+] CSV 요약 생성

로컬 csv_file="$OUTPUT_DIR/vulnerability_summary.csv"

echo "Target,Total_Exploits, Total_Shellcode,Severity,High_Priority_Exploits,Top_Platform,Top_Type" > "$csv_file"

분석_파일에 대한 "$OUTPUT_DIR"/*/analysis.json; 할 if [ -f "$analysis_file" ]; 다음 python3 << EOF의 수입 json

open('$analysis_file', 'r') 으로 f: 데이터 = json.load(f)

대상 = data.get('target', 'Unknown').replace(',', ';') total_exploits = data.get('total_exploits', 0) total_shellcodes = data.get('total_shellcodes', 0) severity = data.get('severity_assessment', 'Unknown') high_priority = len (data.get ('high_priority_exploits', [])))

플랫폼 = data.get('platforms', {}) top_platform = max(platforms.keys(), key=lambda k: platform[k]) 플랫폼이 아닌 경우

타입 = data.get('types', {}) top_type = max(types.keys(), key=lambda k: type[k]) 타입을 지정하면 다른 'Unknown'

print(f"{target},{total_exploits},{total_shellcode},{severity},{high_priority},{top_platform},{top_type}") EOF 정보 · 완료 >> "$csv_file"

echo "[+] CSV 요약 생성 : $csv_file" 이름 *

주요 실행

echo "[+] 자동화 취약점 평가 시작 echo "[+] 대상 목록: $TARGET_LIST" echo "[+] 출력 디렉토리: $OUTPUT_DIR"

자주 묻는 질문

이름 * 명령 -v 검색 및> /dev/null; 다음 echo "[-] SearchSploit을 찾을 수 없습니다. 먼저 ExploitDB를 설치하십시오." 출구 1 ·

각 목표 달성

합계 =0 successful_assesments=0'실제 이름입 successful_assessments=0니다.

읽기 -r 대상; 할 # Skip empty lines and comments | [[ -z "$target" | | "$target" =~ ^#.*$ ]] && 계속 |

합계_targets=$((total_targets + 1))

if status_target "$target"; 그런 다음 successful_assesments=$(successful_assesments + 1)) ·

# Small delay to avoid overwhelming the system

잠 1

완료 < "$TARGET_LIST"

echo "[+] 평가 완료" echo " 총 목표 : $ 총_targets" echo " 성공적인 평가 : $successful_assesments"

Generate 보고서

생성_report 생성_csv_summary

echo "[+] 취약 평가 완료" echo "[+] 저장 된 결과 : $OUTPUT_DIR" echo "[+] 자세한 보고서에 대한 $REPORT_FILE 오픈


### Exploit Collection and Organization
```bash의 경우
#!/bin/bash
# 자동화된 악용 수집 및 조직

COLLECTION_NAME = $ 1 "
SEARCH_TERMS="$2"로 이동
OUTPUT_DIR=exploit_collection_$\{COLLECTION_NAME\}_$(일) +%Y%m%d_%H%M%S)"

[ -z "$COLLECTION_NAME" ]|[ -z "$SEARCH_TERMS" ]
echo "사용: $0 <collection_name> <search_terms>
echo "Example : $0 'web_exploits' 'php, 아파치, nginx,wordpress'"
출구 1
·

mkdir -p "$OUTPUT_DIR"의

# 검색 용어를 수집하는 기능
수집가() \{
현지 검색_term="$1"
로컬 용어_dir="$OUTPUT_DIR/$(echo "$search_term"|tr"/"_')"

echo "[+] 수집 악용: $search_term"

mkdir -p "$term_dir"의 경우

    # Search and save results
searchploit -j "$search_term" > "$term_dir/search_results.json"의 검색

if [ ! -s "$term_dir/search_results.json" ]; 다음
이쵸 " [-] 발견되지 않음: $search_term"
반환 1
·

    # Parse and categorize exploits
python3 << EOF의
수입 json
수입 os
컬렉션 가져오기 defaultdict

# 검색 결과
open('$term_dir/search_results.json', 'r') 으로 f:
데이터 = json.load(f)

악용 = data.get('RESULTS_EXPLOIT', [])
인쇄 (f" [+] Found \{len(exploits)\} $search_term에 대한 악용)

# 카테고리
범주 = \ 이름 *
'remote': [],
'local': [],
'웹앱': [],
'dos': [],
'창': [],
'linux': [],
'php': [],
'recent': [] # 지난 2 년
이름 *

악용에 악용을 위해:
exploit_type = 악용.get('Type', '').lower()
플랫폼 = exploit.get('Platform', '').lower()
title = 악용.get('Title', '').lower()
date = 악용.get('Date', '')

    # Categorize by type
if 'remote' 에 exploit_type:
카테고리['remote'].append(exploit)
elif 'local' 에 exploit_type:
카테고리['local'].append(exploit)
elif 'webapps' 에 exploit_type:
카테고리['webapps'].append(exploit)
elif 'dos' 에 exploit_type:
카테고리['dos'].append(exploit)

    # Categorize by platform
플랫폼에서 'windows':
카테고리['windows'].append(exploit)
elif 'linux' 플랫폼:
카테고리['linux'].append(exploit)
플랫폼에서 elif 'php':
카테고리['php'].append(exploit)

    # Check if recent (last 2 years)
날짜:
년 = int(date.split('-')[0])
if year >= 2022: # 현재 연도에 따라 조정
카테고리['recent'].append(exploit)

# 분류 된 데이터 저장
카테고리에 대한, exploits_list 카테고리.items():
if 악용_list:
카테고리_dir = f'$term_dir/\{category\} 이름 *
os.makedirs(category_dir, 존재하는_ok=True)

open(f'\{category_dir\}/exploits.json', 'w') 으로 f:
json.dump(exploits_list, f, indent=2)

        # Create download list
open(f'\{category_dir\}/download_list.txt', 'w')를 f로 엽니다:
licenses API 웹 사이트 Go1.12.1
f.write(f"\{exploit.get('EDB-ID', '')\}\n")

print(f" [+] \{category\}: \{len(exploits_list)\} 악용)

print(f" [+] Categorization 완료 $search_term")
EOF 정보

    # Download exploits by category
"$term_dir"/*; 에서 카테고리_dir에 대한
if [ -d "$category_dir" ] && [ -f "$category_dir/download_list.txt" ]; 그런 다음
Category_name=$(기본값 "$category_dir")
이쵸 " [+] 다운로드 $category_name 악용"

읽기 동안 -r edb_id; 할
if [ -n "$edb_id" ]; 다음
| Searchploit -m "$edb_id" -o "$category_dir/" 2>/dev/null |  | true |
·
완료 < $category_dir/download_list.txt"
·
이름 *

반환 0
이름 *

# 수집 색인을 생성하는 기능
create_collection_index() \{
echo "[+] 수집 색인 만들기

로컬 인덱스_file="$OUTPUT_DIR/collection_index.html"

python3 << EOF의
수입 json
수입 os
수입 glob
datetime 가져오기 datetime
컬렉션 가져오기 defaultdict

# 모든 악용 데이터를 수집
전체 = []
term_stats = defaultdict(lambda: defaultdict(int))

glob.glob에 있는 result_file ('$OUTPUT_DIR/*/search_results.json'):
term_name = os.path.basename(os.path.dirname(results_file))) 을

태그 :
open(results_file, 'r') 으로 f:
데이터 = json.load(f)

악용 = data.get('RESULTS_EXPLOIT', [])
모든_exploits.extend(exploits)

        # Calculate statistics
term_stats[term_name] ['total'] = len(exploits)

악용에 악용을 위해:
플랫폼 = exploit.get('Platform', 'Unknown')
exploit_type = 악용.get('Type', 'Unknown')

term_stats[term_name] ['platform'] += 1개
term_stats[term_name] ['type'] [exploit_type] += 1개

제외 :
계속하기

# HTML 인덱스 생성
html_content = f"" "
· DOCTYPE의 HTML>
한국어
<머리>
<title>Exploit 컬렉션: $COLLECTION_NAME</title>

</머리>
<체>
<div class="header">
<h1>Exploit 컬렉션: $COLLECTION_이름</h1>
<p>Generated: \{datetime.now().strftime('%Y-%m-%d %H:%M:%S')\}</p>
<p>검색 조건: $SEARCH_TERMS</p>의 경우
</div>

<div class="stats">
<div class="stat-box">
<h3>\{len(all_exploits)\}</h3>
<p>총 폭발</p>
</div>
<div class="stat-box">
<h3>\{len(term_stats)\}</h3>
<p>검색 조건</p>
</div>
<div class="stat-box">
<h3>\{len(set(e.get('Platform', 'Unknown') ) ) ) }</h3>
<p>플랫폼</p>
</div>
<div class="stat-box">
<h3>\{len(set(e.get('Type', 'Unknown'))) ) ) }</h3>
<p>Exploit 유형</p>
</div>
</div>

<h2>Collection 내용</h2>
"""

# 각 검색 용어에 대한 세부 사항 추가
term_name의 경우, term_stats.items의 통계():
사이트 맵
<div class="term">
<h3>\{term_name.replace('_', '').title()\}</h3>
<p><strong>총 폭발:</strong> \{stats['total ₢ 킹

<h4>카테고리:</h4>
<div style="display: flex; flex-wrap: wrap; gap: 10px;">
"""

    # List available categories
if (으)로 계산하기
카테고리에 대한 ['remote', 'local', 'webapps', 'dos', 'windows', 'linux', 'php', 'recent']:
카테고리_경로 = f"\{term_dir\}/\{category\}"
if os.path.exists(category_path):
적용 = 0
태그 :
open(f"\{category_path\}/exploits.json", 'r') 으로 f:
악용 = json.load(f)
array_count = len(exploits)
제외 :
패스워드

사이트 맵
<div class="category">
<strong>\{category.title()\}</strong><br>
\{exploit_count\} 사용
</div>
"""

html_content += ""
</div>
</div>
"""

html_content += ""

<h2>사용 지침</h2>
<div class="term">
<h3>감독 구조</h3>
<ul>
<li><strong>search_term/</strong> - 개인 검색 용어 결과</li>
<li><strong>search_term/category/</strong> - 유형/platform</li>에 의해 분류되는 폭발물
<li><strong>search_term/category/exploits.json</strong> - 폭발 메타데이터</li>
<li><strong>search_term/category/[EDB-ID].*</strong> - 다운로드 악용 파일</li>
</ul>

<h3>빠른 액세스 명령</h3>
<이전>
# 모든 원격 사용보기
사이트 맵 -name "remote" - 유형 d

# 모든 다운로드 악용 파일 목록
. -name "*.c" -o -name "*.py" -o -name "*.rb" -o -name "*.pl"

# 검색 결과
grep -r "부퍼 오버 플로우".

# 유형에 의한 공격
| 한국어 -이름 "exploits.json" -exec jq -r '.[].Type' \{\} \; | sort | uniq -c의 |
</이전>
</div>
</몸>
</html>
"""

open('$index_file', 'w') 으로 f:
f.write(html_content)를

인쇄 (f" [+] 생성된 컬렉션 인덱스: $index_file")
EOF 정보
이름 *

# 휴대용 수집을 만드는 기능
create_portable_collection()를 만듭니다. 이름 *
echo "[+] 휴대용 수집 아카이브 만들기

지역 아카이브_name="$\{COLLECTION_NAME\}_exploit_collection_$(date +%Y%m%d).tar.gz"

    # Create README
고양이 > "$OUTPUT_DIR/README.md"< EOF
# 폭발물 수집: $COLLECTION_이름

생성됨: $ (일)
검색 조건: $SEARCH_TERMS

## 디렉토리 구조

- **search_term/**: 검색 결과
- **search_term/category/**: Exploits는 유형/platform에 의해 분류했습니다
- **search_term/category/exploits.json**: 메타데이터
- **search_term/category/[EDB-ID].***: 다운로드 악용 파일

## 1 년 전

- **remote**: 원격 코드 실행
- **local**: 지역 특권 에스컬레이션 악용
- ** webapps**: 웹 애플리케이션 악용
- **도 **: 서비스 악용의 부인
- ** 창 **: Windows-specific 악용
- ** 리눅스 **: Linux-specific 악용
- ** PHP**: PHP-specific 악용
- **최근 **: 최근 악용 (최근 2 년)

## 제품 정보

1. 원하는 위치에 아카이브를 추출
2. Open collection_index.html 개요
3. 대상 악용을 위한 특정 범주에 Navigate
4. 명세 이용하기 전에 앱 사용
5. 명세 시험의 앞에 적당한 허가를 지킵니다

## 법적 고지

이 악용은 교육 및 공인 테스트 목적으로만 제공됩니다.
시스템에서만 사용하거나 테스트에 명시된 서면 허가가 있습니다.
무단 사용은 지역 법률 및 규정을 위반할 수 있습니다.
EOF 정보

    # Create archive
Tar -czf "$archive_name" -C "$(dirname "$OUTPUT_DIR")" "$(basename "$OUTPUT_DIR")"

echo "[+] 만든 휴대용 컬렉션: $archive_name"
에코 " Archive size: $(du -h "$archive_name"|cut -f1)"
이름 *

# 주요 실행
echo "[+] 악용 수집 및 조직 시작
echo "[+] 수집 이름: $COLLECTION_NAME"
echo "[+] 검색 조건: $SEARCH_TERMS"

# 자주 묻는 질문
이름 * 명령 -v 검색 및> /dev/null; 다음
echo "[-] SearchSploit을 찾을 수 없습니다. 먼저 ExploitDB를 설치하십시오."
출구 1
·

# 각 검색 용어
IFS=',' read -ra TERMS`<<<>
"$\{TERMS[@]\\\}"에서 용어를 정의합니다.
    # Trim whitespace
term=$(echo "$term"|xargs)
collect_exploits "$term"의 경우
이름 *

# 수집 색인 및 아카이브 생성
create_collection_index를 만듭니다.
create_portable_ 수집

echo "[+] Exploit 수집 완료"
echo "[+] 저장 된 결과 : $OUTPUT_DIR"
echo "[+] 오픈 $OUTPUT_DIR/collection_index.html 개요"

Continuous Monitoring for New Exploits

```bash의 경우

!/bin/bash

새로운 악용을 위한 지속적인 감시

프로젝트 LOG_DIR="exploit_monitoring_logs"로 이동 이메일 = security@company.com CHECK_INTERVAL=3600 # 1시간

mkdir -p "$LOG_DIR"의

기본 설정 만들기

if [ ! -f "$CONFIG_FILE" ]; 다음 고양이 > ''' "$CONFIG_FILE" << 'EOF'

Exploit 모니터링 구성

모니터링 대상 (라인당 1개)

프로젝트 아파치 사이트맵 사이트 맵 PHP를 윈도우 10 리눅스 커널 열린SSL ·

Alert 설정

ALERT_ON_NEW_EXPLOITS=true ALERT_ON_HIGH_SEVERITY=레이 미니멀_SEVERITY_THRESHOLD=5

Database 설정

UPDATE_DATABASE=true UPDATE_INTERVAL=86400 # 24 시간

알림 설정

이메일_ALERTS=true 바카라사이트 디스커버리 EOF 정보 echo "Created $CONFIG_FILE - 모니터링 설정을 구성하십시오" 출구 1 ·

소스 "$CONFIG_FILE"

ExploitDB 업데이트 기능

update_database() { echo "[+] ExploitDB 데이터베이스 업데이트

local update_log=$LOG_DIR/database_update_$(일) +%Y%m%d_%H%M%S).log"

검색 -u > "$update_log" 2>&1

if [ $? -eq 0 ]; 다음 이쵸 " [+] 업데이트 된 데이터베이스 " 반환 0 이름 * 이쵸 " [-] 데이터베이스 업데이트 실패" 반환 1 · 이름 *

새로운 악용을 확인하는 기능

check_new_exploits() { 현지 목표 ="$1" 현지 타임스탬프 = $ (날짜 + % Y % m % d_ % H % M % S) 로컬 현재_results="$LOG_DIR/${target}_${timestamp}.json" 로컬 이전_results="$LOG_DIR/${target}_previous.json"

echo "[+] 새로운 악용을 확인: $target"

# Get current exploits

searchsploit -j "$target" > "$current_results"의 검색

if [ ! -s "$current_results" ]; 다음 이쵸 " [-] 찾을 수 없음: $target" 반환 1 ·

# Compare with previous results

if [ -f "$previous_results" ]; 다음 # Extract exploit IDs Local current_ids=$(jq -r '.RESULTS_EXPLOIT[]?.["EDB-ID"]' "$current_results" 2>/dev/null|sort) 지역 이전_ids=$(jq -r'.RESULTS_EXPLOIT[]?.["EDB-ID"]"$previous_results" 2>/dev/null|sort)

    # Find new exploits

지역 new_exploits=$(comm -23 <(echo "$current_ids") <(echo "$previous_ids"))

if [ -n "$new_exploits" ]; 다음 지역 new_count=$(echo "$new_exploits"|wc -l) 이쵸 " [!] $new_count 새로운 악용을 찾았습니다: $target"

        # Get details of new exploits

지역 new_exploits_details="$LOG_DIR/${target}new${timestamp}.json"

python3 << EOF의 수입 json

현재 결과를 읽으십시오

open('$current_results', 'r') 으로 f: 데이터 = json.load(f)

악용 = data.get('RESULTS_EXPLOIT', []) new_ids = """$new_exploits"".strip().split('\n')

필터 새로운 악용

new_exploits = new_ids에서 e.get('EDB-ID')가 있는 경우 악용에 대한 예)

새로운 악세서리

open('$new_exploits_details', 'w') 으로 f: json.dump(new_exploits, f, indent=2)

print(f"새로운 악용 저장: $new_exploits_details") EOF 정보

        # Send alert

if [ "$ALERT_ON_NEW_EXPLOITS" = "true" ]; 다음 send_alert "NEW_EXPLOITS" "$target" "$new_count" "$new_exploits_details" ·

반환 0 이름 * 이쵸 " [+] 새로운 악용이 없습니다 : $target" · 이름 * 이쵸 " [+] 첫 번째 스캔: $target" ·

# Update previous results

cp "$current_results" "$이전_results"

반환 0 이름 *

severity를 평가하는 기능

() { 지역 악용_file="$1" 현지 타겟 = $ 2 "

python3 << EOF의 수입 json

태그 : open('$exploits_file', 'r') 으로 f: 악용 = json.load(f)

if not isinstance(exploits, 리스트): 악용 = 악용.get('RESULTS_EXPLOIT', [])

# Severity scoring

severity_score = 0 높은_severity_count = 0

악용에 악용을 위해: title = 악용.get('Title', '').lower() exploit_type = 악용.get('Type', '').lower()

    # High severity indicators

if any(keyword in title for keyword in ['remote', 'rce', 'buffer overflow', 'privilege escalation']): severity_score는 += 3 댓글 높은_severity_count += 1개 elif 'remote' 에 exploit_type: severity_score는 += 2개 높은_severity_count += 1개 elif any(keyword in title for keyword in ['dos', 'denial of service']): severity_score는 += 1개 다른 것: severity_score는 += 0.5 이하

인쇄(f"Severity score: {severity_score}") print(f"high severity 악용: {high_severity_count}")

# Check threshold

만약 severity_score >= $MINIMUM_SEVERITY_THRESHOLD: 인쇄("ALERT_THRESHOLD_EXCEEDEDED")

예외를 제외하고: 인쇄(f"Error 평가 기준: {e}") EOF 정보 이름 *

경고를 보내는 기능

send_alert() { 로컬 alert_type="$1" 현지 타겟 = $ 2 " 현지 조사 ="$3" Local details_file="$4" - 한국어

지역 주제 ="[EXPLOIT ALERT] $alert_type: $target" Local message="Alert: $count $target 에 $target 에 $(date)"

echo "[!] 경고 전송: $subject"

# Email alert

if [ "$EMAIL_ALERTS" = "true" ] && [ -n "$ALERT_EMAIL" ]; 다음 if [ -f "$details_file" ]; 다음 | 에코 "$message" | 메일 - "$subject" -A "$details_file" "$ALERT_EMAIL" 2>/dev/null | | \ | echo "이메일 경고 실패" 이름 * | 에코 "$message" | 메일 - "$subject" "$ALERT_EMAIL" 2>/dev/null | | \ | echo "이메일 경고 실패" · ·

# Slack alert

if [ -n "$SLACK_WEBHOOK" ]; 다음 컬 -X POST -H 'Content-type: application/json' \ --data "{"text":"$subject: $message"}" 이름 * | "$SLACK_WEBHOOK" 2>/dev/null | | 에초 "Slack alert 실패" | ·

# Discord alert

if [ -n "$DISCORD_WEBHOOK" ]; 다음 컬 -X POST -H 'Content-type: application/json' \ --data "{"content":"$subject: $message"}" 이름 * | "$DISCORD_WEBHOOK" 2>/dev/null | | 에초 "Discord alert 실패" | · 이름 *

모니터링 보고서 생성 기능

생성_monitoring_report() { echo "[+] 모니터링 보고서 생성

로컬 보고서_file="$ LOG_DIR/monitoring_report_$(날짜 +%Y%m%d).html"

python3 << EOF의 수입 json 수입 glob 수입 os datetime 가져오기 datetime, timedelta에서 컬렉션 가져오기 defaultdict

모니터링 데이터

monitoring_data = defaultdict(list) 합계_new_exploits = 0

지난 24 시간 동안 모든 새로운 악용 파일 찾기

cutoff_time = datetime.now() - timedelta(시간=24)

glob.glob에 있는 new_file ('$LOG_DIR/new.json'): 태그 : # Extract timestamp from filename 파일명 = os.path.basename(new_file) timetamp_str = filename.split('new')[1].replace('.json', '') file_time = datetime.strptime(timestamp_str, '%Y%m%d_%H%M%S')

file_time >=의 경우 커트오프_time: # Extract target name 대상 = filename.split('new')[0]

open(new_file, 'r') 으로 f: 악용 = json.load(f)

모니터링_data[target].extend(exploits) 합계_new_exploits += len(exploits)

제외 : 계속하기

HTML 보고서 생성

html_content = f"" " · DOCTYPE의 HTML> 한국어 <머리> Exploit 모니터링 보고서

</머리> <체>

Exploit 모니터링 보고서

Generated: \{datetime.now().strftime('%Y-%m-%d %H:%M:%S')\}

Monitoring 기간: 지난 24 시간

⚠️ 경고 요약

총 새로운 폭발: \{total_new_exploits\}

Affected Target: \{len(monitoring_data)\}

"""

만약 monitoring_data: html_content += "

대상

의 새로운 폭발

대상, monitoring_data.items에 악용: 사이트 맵

\{target\}

새로운 폭발: \{len(exploits)\}

<테이블> EDB-ID에 대하여 제목플랫폼Type 날짜 """ 악용에 대 한[:10]: # 상단 10 표시 사이트 맵 Dollmania _ Upload _ 이용 약관 _ 개인 정보 보호 정책 _ 쿠키 정책 _ 모든 사이트 RSS _ 연락처 \{exploit.get('Title', '')\} \{exploit.get('Platform', '')\} \{exploit.get('Type', '')\} \{exploit.get('Date', '')\} """ html_content += ""

""" 다른 것: html_content += ""

✅ 새로운 폭발성

새로운 악용은 모니터 대상을 위한 마지막 24 시간에서 감지되었습니다.

"""

html_content += "" </몸> """

open('$report_file', 'w') 으로 f: f.write(html_content)를

인쇄 (f" [+] 생성 된 모니터링 보고서: $report_file") EOF 정보 이름 *

이전 로그를 정리하는 기능

엠에디터 매크로 참조:Cleanup_logs(){ echo "[+] 오래된 모니터링 로그 청소

# Keep logs for 30 days

"$LOG_DIR" -이름 ".json" -mtime +30 -delete "$LOG_DIR" -이름 ".log" -mtime +30 -delete "$LOG_DIR" -이름 "*.html" -mtime +7 - 삭제 이름 *

주요 감시 루프

echo "[+] 지속적인 악용 모니터링 시작" echo "[+] 체크 간격: $(CHECK_INTERVAL/60) 분

마지막_update=0

진정한; 도 echo "[+] $ (date)에서 모니터링 사이클 시작

# Update database if needed

현재 = $ (날짜 + %) if [ "$UPDATE_DATABASE" = "true" ] && [ $(current_time - last_update)) -ge $UPDATE_INTERVAL ]; 다음 update_database가 있다면; 마지막_update=$current_time · ·

# Check each monitored target

echo "$MONITOR_TARGETS"|while read -r 대상; 할 # Skip empty lines [ -z "$target"] && 계속

check_new_exploits "$target"의 경우 이름 *

# Generate daily report and cleanup

생성_monitoring_report 이메일:

echo "[+] $ (date)에서 완료된 모니터링 사이클 echo "[+] 다음 체크인 $(CHECK_INTERVAL / 60) 분"

수면 "$CHECK_INTERVAL" 이름 *


## Integration with Security Tools

### Metasploit Integration
```bash의 경우
# SearchSploit를 사용하여 Metasploit 모듈 검색
메타네트웍스 apache

# Metasploit 모듈과의 활용
| Searchploit -j apache | jq -r '.RESULTS_EXPLOIT[] | select(.Title | contains("Metasploit")) | .["EDB-ID"] 이름 * |

# Metasploit 데이터베이스를 사용한 Cross-reference
msfconsole -q -x "search edb:12345; 출구"

Nmap Integration

```bash의 경우

SearchSploit 사용 Nmap 스캔 결과

| nmap -sV target.com | grep -E "^[0-9]+/tcp" | while read line; do | service=$(echo "$line"|awk '{print $3}') 버전=$(echo "$line"|awk '{print $4" "$5}") echo "검색에 대한: $service $version" 검색 "$service $version" 이름 *

SearchSploit를 사용하여 Nmap 스크립트 생성

고양이 > searchsploit.nse << 'EOF' nmap = "nmap"을 요구합니다. 로컬 단축 포트 = require "shortport" 로컬 stdnse = require "stdnse"

설명 = [[ SearchSploit를 사용하여 탐지 된 서비스에 대한 악용을 찾을 수 있습니다. ·

저자 = "보안 연구자" 라이센스 = "Nmap-See https://nmap.org/book/man-legal.html"와 동일 카테고리 = {"discovery", "safe"}

포트룰 = shortport.version_port_or_service()

동작 = 함수(host, port) 로컬 서비스 = port.service 로컬 버전 = port.version

서비스 및 버전이 있는 경우 로컬 cmd = 문자열. format("searchsploit '%s %s', 서비스, version.version 또는 "") 현지 결과 = os.execute (cmd) 반환 string.format("SearchSploit 쿼리: %s", cmd) 이름 *

반환 nil 이름 * EOF 정보


### Burp Suite Integration
```bash의 경우
# Burp Suite에 대한 수출 검색 결과
| Searchploit -j web | jq -r '.RESULTS_EXPLOIT[] | select(.Type | contains("webapps") | .Title' > burp_payloads.txt |

# Burp Suite 확장 페이로드 목록 만들기
| Searchploit --type webapps -j | jq -r '.RESULTS_EXPLOIT[] | .["EDB-ID"] | while read id; do |
searchploit -m "$id" -o /tmp/burp_exploits/
이름 *

Troubleshooting

Common Issues

Database Problems

```bash의 경우

찾을 수없는 데이터베이스

비밀번호 --경로 ls -la /opt/exploitdb/는

Rebuild 데이터베이스

비밀번호 --rebuild

수정 권한

sudo chown -R $USER:$사용자 /opt/exploitdb/

수동 데이터베이스 업데이트

CD /opt/exploitdb를 선택하십시오. && git 잡아당기기


#### Search Issues
```bash의 경우
# 결과 없음
비밀번호 --확인
Searchsploit - 통계

# 구름 많음
rm -rf ~ /.searchsploit_cache를

# Debug 검색
Searchsploit --debug 아파치

# 자주 묻는 질문
searchsploit -e "exact 일치"
searchsploit -i "문자 구분"

File Access Problems

```bash의 경우

제출 거부

스도 chmod + x /opt/exploitdb/searchsploit

찾을 수 없음

파일 업로드 -p 12345 ls -la /opt/exploitdb/exploits/

복사 문제

-m 12345 -o /tmp/ ls -la /tmp / 또는 ```

Performance Issues

```bash의 경우

빠른 검색

Searchsploit --platform 리눅스 아파치 # 제한 플랫폼 Searchsploit -t apache # 제목만 apache 의 검색|head -20 # 제한 결과

큰 데이터베이스

뒤 -sh /opt/exploitdb/ git gc --aggressive # 클린업 git repo

메모리 문제

ulimit -v 1000000 # 제한 가상 메모리 카지노사이트

검색 결과 분석

ο 회원 관리

Exploit 관리

Exploits 복사 및 다운로드

카지노사이트

보기 및 시험 Exploits

카지노사이트

Exploit 조직

카지노사이트

Database 관리

Database 업데이트

카지노사이트

Database 정보

카지노사이트

데이터베이스 유지

카지노사이트

자동화 스크립트

자동화된 취약점 인증현황

카지노사이트

Exploit 컬렉션 및 조직

카지노사이트

새로운 Exploits를 위한 지속적인 감시

오프화이트

Security Tools와 통합

Metasploit 통합

카지노사이트

Nmap 통합

오프화이트

Burp Suite 통합

카지노사이트

문제 해결

일반적인 문제

데이터베이스 문제

카지노사이트

검색 문제

카지노사이트

파일 액세스 문제

카지노사이트

성능 문제

카지노사이트

지원하다


이 속임수 시트는 SearchSploit을 사용하여 포괄적 인 참조를 제공합니다. 항상 어떤 환경에서든지 악용을 사용하기 전에 적절한 승인이 있습니다. 필수