Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
emudhra — Примеры программ на Go, Java, Node, Perl, Python, Ruby, Rust и curl, которые проверяют, отклоняет ли хранилище доверенных сертификатов TLS подключения к известным вредоносным сайтам CA eMudhra. | Kitploit
Инструменты/GitHubGitHub/jschauma/emudhra
Оборонительные ИнструментыАнализ уязвимостейАудит конфигурацииСетевая безопасностьКриптографияБезопасность Цепочки ПоставокОбучение и Образование
GitHubjschauma/emudhra

emudhra

Примеры программ на Go, Java, Node, Perl, Python, Ruby, Rust и curl, которые проверяют, отклоняет ли хранилище доверенных сертификатов TLS подключения к известным вредоносным сайтам CA eMudhra.

Репозиторий
3114 дней назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Проверки пакета eMudhra

https://emudhra.we-have-a-problem.com/

Конечно, ваши браузеры делают всё правильно, но TLS происходит не только в браузере, а ещё в нескольких других местах. Поэтому нужно проверить все места, где может скрываться пакет. Какая морока!

У меня нет для вас решения, извините. Но если вы хотите просто проверить, правильно ли конкретный язык работает из коробки, вот несколько простых примеров программ. Каждая из них молча ничего не вернёт (потому что так принято в Unix), если всё хорошо, и сообщит об ошибке, если сможет подключиться к известным плохим сайтам.

Инструмент будет использовать то, что задано по умолчанию для данного фреймворка/языка, но вы также можете указать альтернативный пакет для проверки. Если он знает как, он покажет, какой пакет / путь он использовал.

Примеры

Go

$ go run emudhra.go
$ go run emudhra.go /tmp/cert.pem.bad 
BAD: successful connection to https://dv-g3b-aaa-emudhra.we-have-a-problem.com/
BAD: successful connection to https://dv-g3b-emudhra.we-have-a-problem.com/
exit status 2
$

Java

$ java emudhra.java 
Using CA file: /opt/homebrew/Cellar/openjdk/23.0.2/libexec/openjdk.jdk/Contents/Home/lib/security/cacerts
BAD: successful connection to https://dv-g3b-aaa-emudhra.we-have-a-problem.com/
BAD: successful connection to https://dv-g3b-emudhra.we-have-a-problem.com/
$ java emudhra.java  /etc/ssl/cert.pem
Using CA file: /etc/ssl/cert.pem
$

Рассмотрите возможность добавления промежуточных сертификатов в ваш blocked.certs, как обсуждается здесь.

Node

$ node emudhra.js
$ node emudhra.js /tmp/cert.pem.bad 
BAD: successful connection to https://dv-g3b-aaa-emudhra.we-have-a-problem.com/
BAD: successful connection to https://dv-g3b-emudhra.we-have-a-problem.com/
$

Perl

$ perl emudhra.pl 
Using SSL_ca_file: /private/etc/ssl/cert.pem
$ perl emudhra.pl /tmp/cert.pem.bad 
Using SSL_ca_file: /tmp/cert.pem.bad
BAD: successful connection to https://dv-g3b-aaa-emudhra.we-have-a-problem.com/
BAD: successful connection to https://dv-g3b-emudhra.we-have-a-problem.com/
$

Python

$ python3 emudhra.py
Using CA file: /opt/homebrew/etc/openssl@4/cert.pem
$ python3 emudhra.py /tmp/cert.pem.bad 
Using CA file: /tmp/cert.pem.bad
BAD: successful connection to https://dv-g3b-aaa-emudhra.we-have-a-problem.com/
BAD: successful connection to https://dv-g3b-emudhra.we-have-a-problem.com/
$

Ruby

$ ruby emudhra.rb 
Using CA file: /usr/lib/ssl/cert.pem
$ ruby emudhra.rb /tmp/cert.pem.bad 
Using CA file: /tmp/cert.pem.bad
BAD: successful connection to https://dv-g3b-aaa-emudhra.we-have-a-problem.com/
BAD: successful connection to https://dv-g3b-emudhra.we-have-a-problem.com/
$

Curl

$ sh emudhra.sh 
Used CA file: /etc/ssl/certs/ca-certificates.crt
$ sh emudhra.sh
/tmp/cert.pem.bad 
Used CA file: /tmp/cert.pem.bad
BAD: successful connection to https://dv-g3b-aaa-emudhra.we-have-a-problem.com/
BAD: successful connection to https://dv-g3b-emudhra.we-have-a-problem.com/
$

Примечание: в macOS вы можете попросить curl(1) использовать нативный бэкенд, который затем отклоняет соединение во всех случаях:

$ CURL_SSL_BACKEND=secure-transport sh emudhra.sh /tmp/cert.pem.bad 
Used CA file: 
$ 

Rust

$ cd rs
$ cargo run
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.35s
     Running `target/debug/rs`
$ cargo run -- /tmp/cert.pem.bad 
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.17s
     Running `target/debug/rs /tmp/cert.pem.bad`
$

Где-то в своих зависимостях Rust выполняет фактическую проверку по чёрному списку скомпрометированных промежуточных сертификатов, поэтому даже с пакетом, который доверяет корневому сертификату eMudhra, он не может подключиться.

Скачать инструмент