Я могу расшифровывать SSL-пакеты в wireshark (GUI), используя закрытые ключи. Точно так же, как расшифровывать пакеты с помощью PyShark (программно). Есть ли другой способ выполнить ту же задачу, используя другой программный подход?
Расшифровать SSL-пакеты с помощью PyShark
Ответы (1)
Это не проверено, но override_prefs позволит вам добавить пользовательские флаги в tshark или переопределить некоторые:
.- вы можете передать словарь атрибуту override_prefs, например
def create_ssl_override(ssl_key_path, server='127.0.0.1', port='443',
protocol='http', ssl_debug_file='ssl_debug.log'):
ssh_key_info = '{server},{port},{protocol},{pem_path}'.format(
server=server, port=port, protocol=protocol, pem_path=pem_path)
return {
'ssl.desegment_ssl_records': 'TRUE',
'ssl.desegment_ssl_application_data': 'TRUE',
'tcp.desegment_tcp_streams': 'TRUE',
'ssl.keys_list': ssl_key_info,
'ssl.debug_file': ssl_debug_file
}
ssl_overrides = create_ssl_override('my_server_key_file.pem')
Поэтому при создании объекта захвата передайте override_prefs=ssl_overrides в качестве одного из аргументов. Опять же, я не проверял это, и я не уверен, что pyshark сможет работать с выводом ssl xml, но попробуйте.
Если не использовать tshark напрямую (пример из https://wiki.wireshark.org/SSL)
tshark -o "ssl.desegment_ssl_records: TRUE" -o "ssl.desegment_ssl_application_data: TRUE" -o "ssl.keys_list: 127.0.0.1,4443,http,/home/dirkx/xx/privkey.pem" -o "ssl.debug_file: /home/dirkx/.wireshark-log" -i eth0 -R "tcp.port == 4443"
person
Totoro
schedule
05.06.2017