АнглийскийФранцузскийИспанский

Значок OnWorks

sslsplit - Интернет в облаке

Запустите sslsplit в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS

Это команда sslsplit, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


sslsplit - прозрачный и масштабируемый перехват SSL / TLS

СИНТАКСИС


SSLсплит [-kCKOPZdDgGsrReumjplLSFi] -c PEM прокси-спецификации [...]
SSLсплит [-kCKOPZdDgGsrReumjplLSFi] -c PEM -t директория прокси-спецификации [...]
SSLсплит [-OPZdDgGsrReumjplLSFi] -t директория прокси-спецификации [...]
SSLсплит -E
SSLсплит -V
SSLсплит -h

ОПИСАНИЕ


SSLsplit - это инструмент для атак типа "злоумышленник посередине" на зашифрованную сеть SSL / TLS.
соединения. Соединения прозрачно перехватываются через сетевой адрес
движок перевода и перенаправлен на SSLsplit. SSLsplit завершает SSL / TLS и инициирует
новое соединение SSL / TLS с исходным адресом назначения, с сохранением всех данных
передан. SSLsplit предназначен для использования в сетевой криминалистике и проникновении.
тестирование.

SSLsplit поддерживает соединения TCP, SSL, HTTP и HTTPS через IPv4 и
IPv6. Для соединений SSL и HTTPS SSLsplit генерирует и подписывает поддельные X509v3.
сертификаты на лету, на основе оригинального DN субъекта сертификата сервера и
subjectAltName расширение. SSLsplit полностью поддерживает указание имени сервера (SNI) и является
может работать с ключами RSA, DSA и ECDSA, а также с наборами шифров DHE и ECDHE. В зависимости от
версия OpenSSL, SSLsplit поддерживает SSL 3.0, TLS 1.0, TLS 1.1 и TLS 1.2, а также
опционально также SSL 2.0. SSLsplit также может использовать существующие сертификаты, из которых
закрытый ключ доступен вместо создания поддельных. SSLsplit поддерживает NULL-
префиксные сертификаты CN и могут отклонять запросы OCSP обычным способом. Для HTTP и HTTPS
соединений, SSLsplit удаляет заголовки ответа для HPKP, чтобы предотвратить открытый ключ
закрепление, для HSTS, чтобы пользователь мог принимать ненадежные сертификаты, и альтернативный
Протоколы для предотвращения переключения на QUIC / SPDY.

SSLsplit поддерживает ряд механизмов NAT, статическую пересылку и поиск SNI DNS для
определить исходный пункт назначения перенаправленных подключений (см. NAT ENGINES и PROXY
ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ ниже).

Чтобы реально осуществить атаку, вам также необходимо перенаправить трафик в систему.
Бег SSLсплит. Ваши варианты включают бег SSLсплит на легальном маршрутизаторе, ARP
спуфинг, спуфинг ND, отравление DNS, развертывание мошеннической точки доступа (например, использование hostap
режим), физическое повторное включение, злонамеренная реконфигурация VLAN или внедрение маршрута, / Etc / хостов
модификация и тд. SSLsplit не реализует фактическое перенаправление трафика.

ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ


-c пемфайл
Использовать сертификат ЦС от пемфайл подписывать сертификаты, подделанные на лету. Если пемфайл
также содержит соответствующий закрытый ключ CA, он также загружается, в противном случае он должен быть
обеспечены -k. Если пемфайл также содержит параметры группы Диффи-Хеллмана, они
также загружены, иначе они могут быть снабжены -g. Если -t также дается,
SSLsplit подделает сертификат только в том случае, если в
предоставленный каталог сертификатов.

-C пемфайл
Использовать сертификаты ЦС от пемфайл как дополнительные сертификаты в цепочке сертификатов.
Это необходимо, если CA, указанный с -k и -c является суб-ЦС, и в этом случае любой
сертификаты промежуточного ЦС и сертификат корневого ЦС должны быть включены в
цепочка сертификатов.

-d Отключитесь от TTY и запустите как демон, записывая сообщения об ошибках в системный журнал вместо
стандартная ошибка.

-D Запустить в режиме отладки, записать много отладочной информации в стандартную ошибку. Это также
включает режим переднего плана и не может использоваться с -d.

-e двигатель
Используйте двигатель в качестве механизма NAT по умолчанию для прокси-спецификации без явного механизма NAT,
статический адрес назначения или режим SNI. двигатель может быть любой из механизмов NAT
поддерживается системой, как возвращается -E.

-E Перечислите все поддерживаемые механизмы NAT, доступные в системе, и выйдите. Смотрите NAT ENGINES
для списка механизмов NAT, которые в настоящее время поддерживает SSLsplit.

-F спецификация журнала
Записывать содержимое подключения в отдельные файлы журналов с заданной спецификацией пути (см.
ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ ЖУРНАЛА ниже). Для каждого подключения будет записан файл журнала, в котором
будет содержать оба направления данных при передаче. Информация о
соединение будет содержаться только в имени файла. Если -F используется с -j, спецификация журнала
относительно тюрьма. Если -F используется с -u, спецификация журнала должен быть доступен для записи пользователь.

-g пемфайл
Используйте параметры группы Диффи-Хеллмана из пемфайл для эфемерного Диффи-Хеллмана
(EDH / DHE) наборы шифров. Если -g не указан, SSLsplit сначала пытается загрузить DH
параметры из файлов PEM, заданных -K, -k or -c. Если параметры DH не найдены
в файлах ключей автоматически используются встроенные параметры группы 512 или 1024 бит
если приватный ключ не-RSA дается с -K. Это потому, что закрытые ключи DSA / DSS
могут сами по себе использоваться только для подписи и, таким образом, требовать от DH обмена
Ключ сеанса SSL / TLS. Если -g задано, параметры из заданного пемфайл предусматривает
всегда использоваться, даже с закрытыми ключами RSA (в наборах шифров, доступных в
OpenSSL). В -g опция доступна только в том случае, если SSLsplit был создан для версии
OpenSSL, который поддерживает наборы шифров Диффи-Хеллмана.

-G кривая
Используйте названный кривая для шифра Диффи-Хеллмана с эфемерной эллиптической кривой (EECDH)
апартаменты. Если -G не указан, кривая по умолчанию (секп160р2) используется автоматически, если и только если
закрытый ключ не-RSA дается с -K. Это связано с тем, что закрытые ключи ECDSA / ECDSS
могут сами по себе использоваться только для подписи и, следовательно, требовать от ECDH обмена
Ключ сеанса SSL / TLS. Если -G дано названное кривая всегда будет использоваться, даже
с закрытыми ключами RSA (в наборах шифров, доступных в OpenSSL). В -G
опция доступна только в том случае, если SSLsplit был создан для версии OpenSSL, которая
поддерживает наборы шифров Диффи-Хеллмана для эллиптических кривых.

-h Показать справку по использованию и выйти.

-i Для каждого соединения найдите локальный процесс, которому принадлежит соединение. Это делает
информация о процессе, такая как pid, владелец: группа и путь к исполняемому файлу для подключений
происходит из той же системы, что и SSLsplit, доступный для журнала подключений, и позволяет
соответствующие -F директивы спецификации пути. -i доступен в Mac OS X и
FreeBSD; поддержка других платформ пока не реализована.

-j тюрьма
Измените корневой каталог на тюрьма через корневой(2) после открытия файлов. Примечание
что это имеет значение для -F, -S, А для сни прокси-спецификации. Путь, указанный с
-S or -F будет относиться к тюрьма поскольку файлы журнала не могут быть открыты раньше
требуют корневой(2). В зависимости от вашей операционной системы вам нужно будет копировать файлы
как / Etc / resolv.conf в тюрьма чтобы разрешение имен работало. С использованием
сни proxyspecs зависит от разрешения имени. Некоторые операционные системы требуют специальных
узлы устройства, такие как / DEV / нуль находиться в тюрьме. Проверьте свою систему
документация для деталей.

-k пемфайл
Использовать закрытый ключ CA от пемфайл подписывать сертификаты, подделанные на лету. Если пемфайл
также содержит соответствующий сертификат CA, он также загружается, в противном случае он должен быть
обеспечены -c. Если пемфайл также содержит параметры группы Диффи-Хеллмана, они
также загружены, иначе они могут быть снабжены -g. Если -t также дается,
SSLsplit подделает сертификат только в том случае, если в
предоставленный каталог сертификатов.

-K пемфайл
Использовать закрытый ключ от пемфайл для сертификатов, подделанных на лету. Если -K Не
при условии, что SSLsplit сгенерирует случайный 1024-битный ключ RSA.

-l журнальный файл
Регистрировать подключения к журнальный файл в одной строке на формат подключения, включая
адреса и порты, а также некоторую информацию HTTP и SSL, если таковая имеется.

-L журнальный файл
Записывать содержимое подключения в журнальный файл. Журнал содержимого будет содержать журнал, который можно анализировать.
формат с переданными данными, к которым добавляются заголовки, идентифицирующие соединение и
длина данных каждого зарегистрированного сегмента.

-m При сбросе привилегий с помощью -u, переопределить целевую первичную группу, которую нужно установить на
группы.

-O Запретить все запросы Online Certificate Status Protocol (OCSP) на всех прокси-спецификации и
для всех серверов OCSP с ответом OCSP равным попробуй позже, заставляя клиентов OCSP
временно принимать даже отозванные сертификаты. HTTP-запросы обрабатываются как
OCSP запрашивает, если метод ПОЛУЧИТЬ а URI содержит синтаксически допустимый
OCSPRequest Структура ASN.1, анализируемая OpenSSL, или если метод POST и
Content-Type is приложение / ocsp-запрос. Чтобы это было эффективным, SSLsplit должен
обрабатывать трафик, предназначенный для порта, используемого сервером OCSP. Особенно,
SSLsplit должен быть настроен для приема трафика на все порты, используемые серверами OCSP
целевые сертификаты в Certdir указано -t.

-p pid-файл
Запишите идентификатор процесса в pid-файл и откажитесь бежать, если pid-файл уже используется
другим процессом.

-P Сквозные соединения SSL / TLS, которые нельзя разделить, а не отбросить.
Соединения нельзя разделить, если -c и -k не даны и сайт не соответствует
любой сертификат, загруженный с использованием -t, или если подключение к исходному серверу дает
Ошибки SSL / TLS. В частности, это происходит, если сайт запрашивает клиента
сертификат. Сквозная передача с -P приводит к бесперебойному обслуживанию клиентов,
в то время как отбрасывание - более безопасная альтернатива, если неконтролируемые соединения должны быть
предотвратил.

-r прото
Принудительно установить версию протокола SSL / TLS как на стороне клиента, так и на стороне сервера. прото выбрав
соответствующий конструктор метода OpenSSL вместо стандартного SSLv23_method ()
который поддерживает все версии протокола. Это полезно при анализе трафика на
сервер, который поддерживает только определенную версию SSL / TLS и не реализует
правильное согласование протокола. В зависимости от вариантов сборки и версии OpenSSL
который используется, следующие значения для прото принимаются: ssl2, ssl3, tls10, tls11
и tls12. Обратите внимание, что поддержка SSL 2.0 не встроена по умолчанию, потому что некоторые
серверы не обрабатывают сообщения приветствия клиента SSL 2.0 корректно.

-R прото
Отключить версию протокола SSL / TLS прото как на стороне клиента, так и на стороне сервера
отключение соответствующих протоколов в OpenSSL. Чтобы отключить несколько протоколов
версии, -R можно давать несколько раз. Если -r также дано, не будет
эффект при отключении других версий протокола. Отключение версий протокола полезно
при анализе трафика на сервер, который не обрабатывает некоторые версии протокола
ну или протестировать поведение с разными версиями протокола. В зависимости от сборки
параметры и версия используемого OpenSSL, следующие значения для прото
принял: ssl2, ssl3, tls10, tls11 и tls12. Обратите внимание, что поддержка SSL 2.0 не поддерживается.
встроен по умолчанию, потому что некоторые серверы не обрабатывают сообщения SSL 2.0 Client Hello
изящно.

-s шифры
Использовать OpenSSL шифры спецификация как для серверных, так и для клиентских соединений SSL / TLS.
If -s не приводится, зашифрованный список ВСЕ: -aNULL используется. Обычно SSL / TLS
реализации выбирают наиболее безопасные наборы шифров, а не самые быстрые. К
указав соответствующий список шифров OpenSSL, набор шифров может быть
ограничены быстрыми алгоритмами, или eНУЛЬ могут быть добавлены наборы шифров. Обратите внимание, что для
для успешного подключения в комплект шифров SSLsplit должен входить хотя бы один
набор шифров, поддерживаемый как клиентом, так и сервером каждого соединения. Видеть
шифры(1) для получения подробной информации о том, как создавать списки шифров OpenSSL.

-S каталог журнала
Записывать содержимое подключения в отдельные файлы журнала в каталог журнала. Для каждого подключения
будет записан файл журнала, который будет содержать данные обоих направлений в виде
передан. Информация о подключении будет содержаться в имени файла.
Только. Если -S используется с -j, каталог журнала относительно тюрьма. Если -S используется с
-u, каталог журнала должен быть доступен для записи пользователь.

-t Certdir
Используйте закрытый ключ, сертификат и цепочку сертификатов из файлов PEM в Certdir для
сайты, соответствующие соответствующим общим именам, вместо использования поддельных сертификатов
на лету. Один файл PEM должен содержать один закрытый ключ, один
сертификат и, возможно, промежуточные и корневые сертификаты ЦС для использования в качестве
цепочка сертификатов. Если -c и -k также выдаются, сертификаты будут подделаны на-
на лету для сайтов, не соответствующих ни одному из сертификатов, загруженных из Certdir.
В противном случае соединения, не соответствующие сертификату, будут отброшены, или если -P дано,
прошло без разделения SSL / TLS.

-u Отбросьте привилегии после открытия сокетов и файлов, установив реальные, эффективные и
сохраненные идентификаторы пользователей в пользователь и загрузка соответствующих основных и вспомогательных групп.
If -u не указан, SSLsplit потеряет привилегии для сохраненного UID, если EUID! = UID
(сценарий с битом setuid) или никто если работает с полным корень привилегии (EUID ==
UID == 0) и -S не используется. Из-за ошибки Apple -u нельзя использовать с pf
proxyspecs в Mac OS X.

-V Вывести информацию о версии и скомпилированных функциях и выйти.

-Z Отключите сжатие SSL / TLS для всех подключений. Это полезно, если вы ограничиваете
Фактором является ЦП, а не пропускная способность сети. В -Z опция доступна только если SSLsplit
был построен на основе версии OpenSSL, которая поддерживает отключение сжатия.

PROXY ХАРАКТЕРИСТИКИ


Характеристики прокси (прокси-спецификации) состоят из типа подключения, адреса прослушивания и
статический прямой адрес или механизм разрешения адресов (механизм NAT, поиск SNI DNS):

протокол HTTPS слушатьадрес порт [нат-двигатель|fwdaddr порт|сни порт]
SSL слушатьадрес порт [нат-двигатель|fwdaddr порт|сни порт]
HTTP слушатьадрес порт [нат-двигатель|fwdaddr порт]
TCP слушатьадрес порт [нат-двигатель|fwdaddr порт]

протокол HTTPS Перехват SSL / TLS с декодированием протокола HTTP, включая удаление HPKP,
Заголовки ответов HSTS и альтернативного протокола.

SSL Перехват SSL / TLS без декодирования протокола нижнего уровня; расшифрованный
содержимое соединения рассматривается как непрозрачный поток байтов и не изменяется.

HTTP Обычное TCP-соединение без SSL / TLS, с декодированием протокола HTTP, включая
удаление заголовков ответов HPKP, HSTS и альтернативного протокола.

TCP Обычное TCP-соединение без SSL / TLS и без декодирования протокола нижнего уровня;
расшифрованное содержимое соединения рассматривается как непрозрачный поток байтов и не изменяется.

слушатьадрес порт
Адрес IPv4 или IPv6 и имя порта или службы для прослушивания. Это адрес
и порт, на который механизм NAT должен перенаправлять соединения.

нат-двигатель
Механизм NAT для запроса определения исходного адреса назначения и порта
прозрачно перенаправленные соединения. Если двигатель не указан, используется двигатель по умолчанию.
используется, если не переопределено с -e. При использовании механизма NAT SSLсплит нужно бежать
та же система, что и правила NAT, перенаправляя трафик на SSLсплит. См. NAT
ENGINES - список поддерживаемых механизмов NAT.

fwdaddr порт
Статический адрес назначения, IPv4 или IPv6, с портом или именем службы. Когда это
используется, соединения перенаправляются на указанный адрес и порт сервера. Если fwdaddr
это имя хоста, оно будет преобразовано в IP-адрес.

сни порт
Используйте имя хоста с указанием имени сервера (SNI), отправленное клиентом в ClientHello.
Сообщение SSL / TLS для определения IP-адреса сервера для подключения. Только это
работает на SSL и протокол HTTPS прокси-спецификации и в качестве аргумента требуется имя порта или службы.
Поскольку для этого требуется поиск DNS, предпочтительнее использовать поиск механизма NAT (см.
выше), за исключением случаев, когда это невозможно, например, когда нет поддерживаемого NAT
двигатель или при работающем SSLсплит в системе, отличной от правил NAT
перенаправление фактических подключений. Обратите внимание, что при использовании -j сни, Вам может понадобиться
подготовить тюрьма чтобы разрешение имен работало из каталога chroot.

ВХОД ХАРАКТЕРИСТИКИ


Спецификации журнала состоят из нуля или более директив в стиле printf; обычный
символы включаются непосредственно в путь вывода. SSLsplit current поддерживает
следующие директивы:

%T Начальное время подключения в виде метки времени ISO 8601 UTC.

%d Адрес назначения и порт.

%s Исходный адрес и порт.

%x Имя локального процесса. Требует -i использоваться. Если информация о процессе
недоступно, эта директива будет исключена из пути вывода.

%X Полный путь локального процесса. Требует -i использоваться. Если процесс
информация недоступна, эта директива будет исключена из пути вывода.

%u Имя пользователя или числовой идентификатор локального процесса. Требует -i использоваться. Если
информация о процессе недоступна, эта директива будет исключена из вывода
дорожка.

%g Имя группы или числовой идентификатор локального процесса. Требует -i использоваться. Если
информация о процессе недоступна, эта директива будет исключена из вывода
дорожка.

%% Буквальный символ "%".

NAT ДВИГАТЕЛИ


SSLsplit в настоящее время поддерживает следующие механизмы NAT:

pf Фильтр пакетов OpenBSD (pf) в годовом исчислении/рдр-к Перенаправления NAT, также доступные во FreeBSD,
NetBSD и Mac OS X. Полностью поддерживается, включая IPv6. Предполагая входящий интерфейс
em0, сначала в старом (FreeBSD, Mac OS X), затем в новом (OpenBSD 4.7+) синтаксисе:

в годовом исчислении pass on em0 прото TCP от 2001: db8 :: / 64 в любой порт 80 \
-> :: 1 порт 10080
в годовом исчислении pass on em0 прото TCP от 2001: db8 :: / 64 в любой порт 443 \
-> :: 1 порт 10443
в годовом исчислении pass on em0 прото TCP от 192.0.2.0/24 в любой порт 80 \
-> 127.0.0.1 порт 10080
в годовом исчислении pass on em0 прото TCP от 192.0.2.0/24 в любой порт 443 \
-> 127.0.0.1 порт 10443

pass in быстрый on em0 прото TCP от 2001: db8 :: / 64 в любой \
порт 80 рдр-к :: 1 порт 10080
pass in быстрый on em0 прото TCP от 2001: db8 :: / 64 в любой \
порт 443 рдр-к :: 1 порт 10443
pass in быстрый on em0 прото TCP от 192.0.2.0/24 в любой \
порт 80 рдр-к 127.0.0.1 порт 10080
pass in быстрый on em0 прото TCP от 192.0.2.0/24 в любой \
порт 443 рдр-к 127.0.0.1 порт 10443

IPFW Переадресация сокетов брандмауэра FreeBSD IP (IPFW), также доступна в Mac OS X. Доступно
на FreeBSD и OpenBSD с использованием pf перенаправить. Полностью поддерживается FreeBSD и OpenBSD,
включая IPv6. Поддерживает IPv4 только в Mac OS X из-за старой версии IPFW
включены. Сначала в IPFW, потом в pf перенаправить синтаксис:

IPFW FWD :: 1,10080 TCP от 2001: db8 :: / 64 в любой 80
IPFW FWD :: 1,10443 TCP от 2001: db8 :: / 64 в любой 443
IPFW FWD 127.0.0.1,10080 TCP от 192.0.2.0/24 в любой 80
IPFW FWD 127.0.0.1,10443 TCP от 192.0.2.0/24 в любой 443

pass in быстрый on em0 прото TCP от 2001: db8 :: / 64 в любой \
порт 80 перенаправить :: 1 порт 10080
pass in быстрый on em0 прото TCP от 2001: db8 :: / 64 в любой \
порт 443 перенаправить :: 1 порт 10443
pass in быстрый on em0 прото TCP от 192.0.2.0/24 в любой \
порт 80 перенаправить 127.0.0.1 порт 10080
pass in быстрый on em0 прото TCP от 192.0.2.0/24 в любой \
порт 443 перенаправить 127.0.0.1 порт 10443

IP-фильтр
IPFilter (ipfilter, ipf), доступный во многих системах, включая FreeBSD, NetBSD,
Linux и Solaris. Поддерживает только IPv4 из-за ограничений SIOCGNATL IOCTL(2)
интерфейс. Предполагая входящий интерфейс bge0:

в годовом исчислении bge0 0.0.0.0/0 порт 80 -> 127.0.0.1 порт 10080
в годовом исчислении bge0 0.0.0.0/0 порт 443 -> 127.0.0.1 порт 10443

Netfilter
Сетевой фильтр Linux с использованием цели iptables REDIRECT. Поддерживает только IPv4 из-за
ограничения в SO_ORIGINAL_DST Getsockopt(2) интерфейс.

Iptables -t натуральный -A PREROUTING -s 192.0.2.0/24 \
-p TCP --dport 80 \
-j REDIRECT --to-порты 10080
Iptables -t натуральный -A PREROUTING -s 192.0.2.0/24 \
-p TCP --dport 443 \
-j REDIRECT --to-порты 10443

tproxy Linux netfilter, использующий цель iptables TPROXY вместе с магией таблицы маршрутизации
чтобы разрешить нелокальный трафик исходить из локальных сокетов. Полностью поддерживается,
включая IPv6.

ip -f инет6 править fwmark 1 поиск 100
ip -f инет6 маршрут локальным по умолчанию DEV lo (см. таблицу ниже) 100
ip6tables -t калечить -N ДИВЕРТ
ip6tables -t калечить -A ДИВЕРТ -j МАРК --set-mark 1
ip6tables -t калечить -A ДИВЕРТ -j ПРИНЯТЬ
ip6tables -t калечить -A PREROUTING -p TCP -m гнездо -j ДИВЕРТ
ip6tables -t калечить -A PREROUTING -s 2001: db8 :: / 64 \
-p TCP --dport 80 \
-j ТПРОКСИ --tproxy-марка 0x1 / 0x1 - в порту 10080
ip6tables -t калечить -A PREROUTING -s 2001: db8 :: / 64 \
-p TCP --dport 443 \
-j ТПРОКСИ --tproxy-марка 0x1 / 0x1 - в порту 10443
ip -f инет править fwmark 1 поиск 100
ip -f инет маршрут локальным по умолчанию DEV lo (см. таблицу ниже) 100
Iptables -t калечить -N ДИВЕРТ
Iptables -t калечить -A ДИВЕРТ -j МАРК --set-mark 1
Iptables -t калечить -A ДИВЕРТ -j ПРИНЯТЬ
Iptables -t калечить -A PREROUTING -p TCP -m гнездо -j ДИВЕРТ
Iptables -t калечить -A PREROUTING -s 192.0.2.0/24 \
-p TCP --dport 80 \
-j ТПРОКСИ --tproxy-марка 0x1 / 0x1 - в порту 10080
Iptables -t калечить -A PREROUTING -s 192.0.2.0/24 \
-p TCP --dport 443 \
-j ТПРОКСИ --tproxy-марка 0x1 / 0x1 - в порту 10443

Обратите внимание, что фильтрацию обратного пути (rp_filter) также необходимо отключить на интерфейсах.
которые обрабатывают перенаправленный трафик TPROXY.

ПРИМЕРЫ


Соответствие приведенным выше образцам конфигурации механизма NAT, перехват HTTP и HTTPS через IPv4
и IPv6 с использованием поддельных сертификатов с закрытым ключом CA ca.key и сертификат ca.crt,
регистрация подключений к подключить.log и данные подключения в отдельные файлы в / Tmp (Добавить
-e нат-двигатель чтобы выбрать подходящий двигатель, если на вашем
система):

SSLсплит -k ca.key -c ca.crt -l подключить.log -L / Tmp \
протокол HTTPS :: 1 10443 протокол HTTPS 127.0.0.1 10443 \
HTTP :: 1 10080 HTTP 127.0.0.1 10080

Перехват IMAP / IMAPS с теми же настройками:

SSLсплит -k ca.key -c ca.crt -l подключить.log -L / Tmp \
SSL :: 1 10993 SSL 127.0.0.1 10993 \
TCP :: 1 10143 TCP 127.0.0.1 10143

Более целенаправленная настройка, только HTTPS, с использованием файлов сертификатов / цепочек / ключей из /путь/к/cert.d
и статическое перенаправление на www.example.org вместо запроса механизма NAT:

SSLсплит -t /путь/к/cert.d -l подключить.log -L / Tmp \
протокол HTTPS :: 1 10443 www.example.org 443 \
протокол HTTPS 127.0.0.1 10443 www.example.org 443

Исходный пример, но с использованием параметров SSL, оптимизированных по скорости за счет отключения сжатия
и выбор только комплектов быстрых блочных шифров и использование предварительно вычисленного закрытого ключа
лист. ключ для поддельных сертификатов (наибольшее увеличение скорости дает
выбор быстрых алгоритмов и небольших размеров ключей для CA и конечных закрытых ключей; проверить
OpenSSL скорость для работы алгоритма в вашей системе):

SSLсплит -Z -s ПУСТО: RC4: AES128 -K лист. ключ \
-k ca.key -c ca.crt -l подключить.log -L / Tmp \
протокол HTTPS :: 1 10443 протокол HTTPS 127.0.0.1 10443 \
HTTP :: 1 10080 HTTP 127.0.0.1 10080

Исходный пример, но запущенный как демон под пользователем SSLсплит и записываем файл PID:

SSLсплит -d -p /var/run/sslsplit.pid -u SSLсплит \
-k ca.key -c ca.crt -l подключить.log -L / Tmp \
протокол HTTPS :: 1 10443 протокол HTTPS 127.0.0.1 10443 \
HTTP :: 1 10080 HTTP 127.0.0.1 10080

Чтобы сгенерировать закрытый ключ CA ca.key и сертификат ca.crt используя OpenSSL:

кошка > x509v3ca.cnf << 'EOF'
[req]
отличительное_имя = reqdn

[reqdn]

[v3_ca]
basicConstraints = CA: TRUE
subjectKeyIdentifier = хэш
AuthorityKeyIdentifier = keyid: всегда, эмитент: всегда
EOF

OpenSSL Genrsa -вне ca.key 1024
OpenSSL REQ -новый -узлы -x509 -ша1 -вне ca.crt -ключ ca.key \
-конфигурация x509v3ca.cnf -расширения v3_ca \
-subj '/ O = SSLsplit Корень CA / CN = SSLsplit Корень CA / ' \
-set_serial 0 -дней 3650

ПРИМЕЧАНИЯ


SSLsplit может обрабатывать относительно большое количество слушателей и соединений из-за
многопоточная, событийная архитектура на основе libevent, использующая преимущества платформы
конкретные замены select (), такие как kqueue. Основной поток обрабатывает слушателей и
сигнализация, в то время как количество рабочих потоков, равное удвоенному количеству ядер ЦП, равно
используется для обработки фактических соединений в отдельных базах событий, включая CPU-
интенсивная обработка SSL / TLS.

Было уделено внимание выбору эффективных структур данных для кэширования сертификатов и
SSL-сеансы. Ведение журнала реализовано в отдельных потоках записи на диск, чтобы гарантировать, что
Потоки обработки событий сокета не должны блокироваться при дисковом вводе-выводе. Выполняется поиск DNS
асинхронно. SSLsplit использует кеширование сеанса SSL на обоих концах, чтобы минимизировать количество
полное SSL-рукопожатие, но даже в этом случае ограничивающим фактором при обработке SSL-соединений являются
фактические вычисления bignum.

Используйте sslsplit онлайн с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

  • 1
    UnitedRPMS
    UnitedRPMS
    Присоединяйтесь к нам в Gitter!
    https://gitter.im/unitedrpms-people/Lobby
    Включите репозиторий URPMS в вашем
    система -
    https://github.com/UnitedRPMs/unitedrpms.github.io/bl...
    Скачать объединенные рпмс
  • 2
    Boost C ++ библиотеки
    Boost C ++ библиотеки
    Boost предоставляет бесплатное портативное
    рецензируемые библиотеки C++.
    упор делается на портативные библиотеки, которые
    хорошо работать со стандартной библиотекой C++.
    Смотрите http://www.bo...
    Скачать библиотеки Boost C++
  • 3
    Виртуальный GL
    Виртуальный GL
    VirtualGL перенаправляет 3D-команды из
    Приложение Unix / Linux OpenGL на
    серверный GPU и преобразует
    визуализированные 3D-изображения в видеопоток
    с которым ...
    Скачать VirtualGL
  • 4
    libusb
    libusb
    Библиотека для включения пользовательского пространства
    прикладные программы для связи с
    USB-устройства. Аудитория: Разработчики, Конец
    Пользователи/рабочий стол. Язык программирования: С.
    Категории ...
    Скачать libusb
  • 5
    Сковорода
    Сковорода
    SWIG - это инструмент для разработки программного обеспечения
    который соединяет программы, написанные на C, и
    C ++ с множеством высокоуровневых
    языки программирования. SWIG используется с
    разные...
    Скачать SWIG
  • 6
    Тема WooCommerce Nextjs React
    Тема WooCommerce Nextjs React
    Тема React WooCommerce, созданная с помощью
    Далее JS, Webpack, Babel, Node и
    Экспресс, используя GraphQL и Apollo
    Клиент. Магазин WooCommerce в React (
    содержит: продукты...
    Скачать тему WooCommerce Nextjs React
  • Больше »

Команды Linux

Ad