Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-20352 — CVE-2025-20352 SNMP Exposure Check (onesixtyone + parser) | Kitploit
도구/GitHubGitHub/scadastrangelove/cve-2025-20352
ReconnaissanceVulnerability AnalysisConfiguration AuditingInformation GatheringNetwork Security
GitHubscadastrangelove/cve-2025-20352

CVE-2025-20352

CVE-2025-20352 SNMP Exposure Check (onesixtyone + parser)

저장소 보기
6210개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-20352 SNMP 노출 점검 (onesixtyone + 파서)

CVE-2025-20352 로고

CVE-2025-20352 (SNMP 서브시스템)와 관련된 Cisco IOS/IOS XE 장치에 대한 빠르고 안전한 블랙박스 노출 점검입니다:

  1. 스캔: onesixtyone을 사용하여 기본 커뮤니티로 서브넷의 SNMP를 스캔합니다.
  2. 파싱: 작은 Python 스크립트로 sysDescr.0 배너를 파싱하여 Cisco IOS/IOS XE를 표시하고, 화이트리스트에 있으면 Fixed, 그렇지 않으면 Potentially Vulnerable (Cisco Software Checker에서 확인 필요)로 표시합니다.

이 프로젝트는 어떤 것도 악용하지 않습니다. 단지 기본 SNMP 커뮤니티에 응답하는 장치를 식별하고 sysDescr.0에서 버전 정보를 추출할 뿐입니다.

빠른 시작

root@kitploit:~
# 0) 이 리포지토리 클론
git clone https://github.com/scadastrangelove/CVE-2025-20352 cve-2025-20352-scan
cd cve-2025-20352-scan

# 1) 의존성 설치 (Ubuntu/Debian)
sudo add-apt-repository -y universe
sudo apt update
sudo apt install -y onesixtyone snmp python3

# 2) 기본 커뮤니티 목록 생성
printf "public\nprivate\n" > communities.txt

# 3) 서브넷 스캔 (직접 수정하세요!)
onesixtyone -c communities.txt 192.168.2.0/24 10.1.2.0/24 | tee snmp_raw.txt

# 4) 결과를 CSV로 파싱
python3 ios_cve20352_parser.py < snmp_raw.txt > parsed.csv

# 5) 보기 좋게 출력
column -s, -t < parsed.csv | less -S

출력

parsed.csv 열:

  • ip — 대상 IP
  • community — 작동한 SNMP 커뮤니티
  • vendor — Cisco / Non-Cisco
  • os_family — IOS, IOS XE 또는 비어 있음
  • version — 배너에서 추출한 버전 문자열
  • status — Fixed, Potentially Vulnerable (Cisco Software Checker에서 확인 필요), 또는 Not Cisco / Not IOS
  • raw — 원본 배너 줄

예시

root@kitploit:~
ip,community,vendor,os_family,version,status,raw
1.1.2.4,public,Cisco,IOS,15.5(3)S2,Potentially Vulnerable — IOS 15.5(3)S2; verify in Cisco Software Checker,"Cisco IOS Software, ASR1000 ... Version 15.5(3)S2 ..."
1.1.2.2,public,Non-Cisco,,,Not Cisco / Not IOS,RouterOS RB750r2

파서 스크립트

ios_cve20352_parser.py는 표준 입력(또는 파일)에서 다음과 같은 형식의 줄을 읽습니다:

root@kitploit:~
<ip> [<community>] <sysDescr...>

Cisco IOS/IOS XE 버전을 추출하고 레이블을 지정합니다.

수정된 버전은 스크립트 내부의 작은 화이트리스트에 있습니다:

root@kitploit:~
FIXED_WHITELIST = {
    "IOS": {
        # Cisco Software Checker를 통해 확인한 정확한 IOS 15.x 수정 버전을 추가하세요
        # 예: "15.9(3)M12": True
    },
    "IOS XE": {
        "17.15.4a": True
        # Cisco가 발표하거나 확인함에 따라 더 추가하세요 (예: "17.15.4b": True)
    }
}

왜 화이트리스트인가요? Cisco의 권고는 관리자가 Cisco Software Checker를 사용하여 트레인/플랫폼별 정확한 영향/수정 빌드를 확인하도록 안내합니다. 따라서 스크립트는 안전한 쪽으로 오류를 범합니다. Cisco IOS/IOS XE 버전이 수정 목록에 없으면 **"Potentially Vulnerable"**로 표시되며, 체커에서 확인해야 합니다.

의존성 설치

Ubuntu/Debian

root@kitploit:~
sudo add-apt-repository -y universe
sudo apt update
sudo apt install -y onesixtyone snmp python3

RHEL/Fedora (예시)

root@kitploit:~
# onesixtyone은 EPEL에 있을 수 있음; 그렇지 않으면 소스에서 빌드
sudo dnf install -y net-snmp-utils python3 git make gcc
git clone https://github.com/trailofbits/onesixtyone.git
cd onesixtyone && make && sudo make install

사용법 상세

1) 스캔

root@kitploit:~
printf "public\nprivate\n" > communities.txt
onesixtyone -c communities.txt 192.168.2.0/24 10.1.2.0/24 | tee snmp_raw.txt

팁:

  • -w 1을 추가하여 호스트당 대기 시간을 줄이거나(더 빠름), 시간 초과가 발생하면 제거하세요.

  • 단일 호스트 배너 직접 조회:

    root@kitploit:~
    snmpget -v2c -c public -t 1 -r 0 <IP> 1.3.6.1.2.1.1.1.0
    

2) 파싱

root@kitploit:~
python3 ios_cve20352_parser.py < snmp_raw.txt > parsed.csv
column -s, -t < parsed.csv | less -S

안전성 및 범위

  • 권한이 있는 네트워크만 스캔하세요.
  • 느린 링크에서는 속도를 보수적으로 유지하세요.
  • 이는 노출 평가이며, 악용이 아닙니다.

문제 해결

  • 결과 없음 / 시간 초과: 시간 초과를 늘리고, 속도를 줄이며, UDP/161에 대한 ACL/방화벽을 확인하세요.
  • Cisco 장치지만 버전이 비어 있음: 배너가 잘렸을 수 있음; snmpget으로 sysDescr.0을 직접 조회하세요.
  • 위음성: 일부 장치는 허용된 관리 호스트에서만 응답함—허용된 지점에서 실행하세요.

기여

  • 확인된 수정 버전을 FIXED_WHITELIST에 추가하세요.
  • 배너 파싱 및 벤더 탐지 개선을 위한 PR을 환영합니다.

라이선스

EN

이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 전체 텍스트는 LICENSE 파일을 참조하세요.

RU

Проект распространяется по лицензии MIT. Полный текст — в файле LICENSE.


RU — Проверка экспозиции CVE-2025-20352 (onesixtyone + парсер)

Быстрая и безопасная оценка экспозиции устройств Cisco IOS/IOS XE, связанная с CVE-2025-20352 (подсистема SNMP):

  1. Сканируем подсети на SNMP через onesixtyone с дефолтными сообществами.
  2. Парсим баннеры sysDescr.0 Python-скриптом: помечаем Cisco IOS/IOS XE и проставляем статус Fixed (если в белом списке) или Potentially Vulnerable (проверить в Cisco Software Checker).

Проект не эксплуатирует уязвимость. Он лишь определяет устройства, отвечающие на дефолтные SNMP-сообщества, и извлекает версию из sysDescr.0.

Быстрый старт

root@kitploit:~
# 0) Клонирование
git clone https://github.com/scadastrangelove/CVE-2025-20352 cve-2025-20352-scan
cd cve-2025-20352-scan

# 1) Зависимости (Ubuntu/Debian)
sudo add-apt-repository -y universe
sudo apt update
sudo apt install -y onesixtyone snmp python3

# 2) Файл сообществ
printf "public\nprivate\n" > communities.txt

# 3) Сканирование подсетей (ИЗМЕНИТЕ ПОД СЕБЯ!)
onesixtyone -c communities.txt 192.168.2.0/24 10.1.2.0/24 | tee snmp_raw.txt

# 4) Парсинг в CSV
python3 ios_cve20352_parser.py < snmp_raw.txt > parsed.csv

# 5) Просмотр
column -s, -t < parsed.csv | less -S

Выходные данные

Столбцы parsed.csv:

  • ip — IP-адрес
  • community — сработавшее SNMP-сообщество
  • vendor — Cisco / Non-Cisco
  • os_family — IOS, IOS XE или пусто
  • version — строка версии из баннера
  • status — Fixed, Potentially Vulnerable (проверить в Cisco Software Checker) или Not Cisco / Not IOS
  • raw — исходная строка баннера

Пример

root@kitploit:~
ip,community,vendor,os_family,version,status,raw
1.1.2.4,public,Cisco,IOS,15.5(3)S2,Potentially Vulnerable — IOS 15.5(3)S2; verify in Cisco Software Checker,"Cisco IOS Software, ASR1000 ... Version 15.5(3)S2 ..."
1.1.2.2,public,Non-Cisco,,,Not Cisco / Not IOS,RouterOS RB750r2

Парсер

ios_cve20352_parser.py читает строки вида:

root@kitploit:~
<ip> [<community>] <sysDescr...>

Извлекает версии Cisco IOS/IOS XE и проставляет статус.

Исправленные версии перечисляются во внутреннем белом списке:

root@kitploit:~
FIXED_WHITELIST = {
    "IOS": {
        # Добавляйте точные версии IOS 15.x после проверки в Cisco Software Checker
        # напр. "15.9(3)M12": True
    },
    "IOS XE": {
        "17.15.4a": True
        # Дополняйте по мере публикаций/подтверждений (напр. "17.15.4b": True)
    }
}

Почему белый список? В описании Cisco предлагается проверять конкретные сборки через Cisco Software Checker. Поэтому, если версия IOS/IOS XE не найдена в списке Fixed, скрипт ставит метку “Potentially Vulnerable”, дальше проверяйте её в чекере.

Установка зависимостей

Ubuntu/Debian

root@kitploit:~
sudo add-apt-repository -y universe
sudo apt update
sudo apt install -y onesixtyone snmp python3

RHEL/Fedora (пример)

root@kitploit:~
# onesixtyone может быть в EPEL; иначе соберите из исходников
sudo dnf install -y net-snmp-utils python3 git make gcc
git clone https://github.com/trailofbits/onesixtyone.git
cd onesixtyone && make && sudo make install

Использование

1) Сканирование

root@kitploit:~
printf "public\nprivate\n" > communities.txt
onesixtyone -c communities.txt 192.168.2.0/24 10.1.2.0/24 | tee snmp_raw.txt

Подсказки:

  • Параметр -w 1 ускоряет опрос; уберите его, если видите таймауты.

  • Точечный баннер для узла:

    root@kitploit:~
    snmpget -v2c -c public -t 1 -r 0 <IP> 1.3.6.1.2.1.1.1.0
    

2) Парсинг

root@kitploit:~
python3 ios_cve20352_parser.py < snmp_raw.txt > parsed.csv
column -s, -t < parsed.csv | less -S

Безопасность и границы

  • Сканируйте только разрешённые сети.
  • На медленных каналах снижайте интенсивность.
  • Это оценка экспозиции, а не эксплуатация.

Решение проблем

  • Пусто/таймауты: увеличьте таймауты, снизьте скорость, проверьте ACL/фаерволы на UDP/161.
  • Cisco без версии: баннер мог быть обрезан — опросите sysDescr.0 напрямую через snmpget.
  • Ложные отрицания: некоторые устройства отвечают только доверенным хостам — запускайте из разрешённой точки.

Вклад

  • Дополняйте FIXED_WHITELIST подтверждёнными фикс-релизами.
  • Пул-реквесты приветствуются: улучшение парсинга и детекции вендора.

License

EN

This project is licensed under the MIT License.

RU

Проект распространяется по лицензии MIT.

도구 다운로드