漏二极管是一种数据二极管的数据过滤测试工具,使用流量调制和闭合延迟攻击

leaky-diode的Python项目详细描述


漏二极管

Leaky diode是smart数据二极管的数据过滤测试工具,即 支持TCP直通的数据二极管借助于一些侧信道 从孤立的一方。使用的攻击是flow modulation和/或 close delay

  • CLOSE DELAY使用请求一个机密位和 服务器关闭连接以编码位值的时间。(即-10秒 延迟是指0,30秒延迟a 1)

  • FLOW MODULATION使用tcp流控制机制将机密位编码为 传输速度。例如,如果客户端请求的位是1,则服务器 如果速度为0到100KB/s,则将速度限制为300KB/s。此攻击的优点是 使用单一连接会使检测变得更困难。在

安装

下载软件包或克隆存储库,然后安装:

python3 setup.py install

或者使用pypi:

^{pr2}$

使用

在隔离端启动服务器:

leaky_server public_ip port 'secret string that needs leaking'

在不可信端,启动客户端并选择其中一个攻击

leaky_client server_ip server_port --mode flow --partial

或者

leaky_client server_ip server_port --mode close --partial

如果不确定的话,只需等待几分钟来接收第一个字节(它是最慢的) 如果它工作正常,则添加--verbose选项,以便在每个接收到的位上打印消息。在

选项

usage: leaky_client [-h][--mode mode][--low_delay delay][--high_delay delay][--low_rate rate][--high_rate rate][--sample_time time][--settle_time time][--partial]
                    host port

Leaky Diode is a data exfiltration test tool for data diodes

positional arguments:
  host                  Remore host address
  port                  Remote host port

optional arguments:
  -h, --help            Show this help message and exit
  --mode mode, -m mode  Attack mode 'flow' or 'close'(default: flow)
  --low_delay delay     Close delay for low bits (default: 5s)(only Close Mode)
  --high_delay delay    Close delay for high bits (default: 10s)(only Close Mode)
  --low_rate rate       Tx rate for low bits (default: 64 KB/s)(only Flow Mode)
  --high_rate rate      Tx rate for high bits (default: 300 KB/s)(only Flow Mode)
  --sample_time time    Tx rate sampling interval (default: 3.0s)(only Flow Mode)
  --settle_time time    Settle time between sending a bit request and the start of 
                        sampling (default: 8.0s)(only Flow Mode)
  --partial             Show partial results each time another byte from the secret is received
  --verbose             Show debugging messages
usage: leaky_server [-h] host port secret_string

Leaky Diode is a data exfiltration test tool for data diodes

positional arguments:
  host           Remore host address
  port           Remote host port
  secret_string  Attack mode 'flow' or 'close'(default: a secret string)

optional arguments:
  -h, --help     Show this help message and exit
  -v, --verbose  Show debugging messages

性能

默认参数下的攻击吞吐量约为1b/min(是的,每分钟一个字节), 您可以通过降低close delay模式中的延迟时间和结算/采样来增加它 flow modulation中的时间(默认值非常保守)

使用此攻击的实际渗出尝试很容易每天泄漏几KB,速度太慢 对于较大的漏洞,但足以针对密钥/密码或选定的用户数据进行有针对性的攻击。在

美国石油学会

也可以将leaky_diode作为一个软件包使用,并在自己的应用程序中包含一个服务器:

  • 类泄漏服务器(主机、端口、机密、时钟=100,最大连接数=10)

    • 主机:(str)侦听接口ip地址(“”表示所有)

    • 端口:(int)侦听端口

    • secret:(bytes)泄漏机密(最大长度65535)

    • ticks:(int)工作进程用于限制连接的每秒节拍数。在

    • max_connections:(int)服务器可以处理的最大并发连接。在

    • start():初始化并启动服务器工作进程

    • stop():停止服务器及其工作进程

fromleaky_diodeimportLeakyServerleaky_server=LeakyServer('192.168.0.10',9000,b'some secret byte string')leaky_server.start()# Do something else......# Close server before exitleaky_server.close()

托多

  • 强化消息分析输入验证(无效长度)
  • 使用并发连接来提高渗出速度。在
  • 调整流量调制模式发送速度。在
  • 调谐关闭延迟模式延迟。在
  • 增加CRC的秘密和秘密长度,甚至更好的纠错。在
  • 添加恢复功能,这样就不需要一次性获得秘密。在
  • 添加一些测试。在

参考文献

  • 数据二极管Wikipedia
  • 占位符所以我记得发表一篇关于袭击的帖子
  • 另一个关于数据二极管的传输和流协议

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
爪哇太阳报。安全验证器。ValidatorException:PKIX路径生成失败   java理解为什么在onDispatchTouchEvent()返回True后仍调用onClick()   java如何在资源包中使用JSF标记/如何在资源包中重写URL?   java什么是流控制异常的替代方案?   java使用Spring数据JPA/MongoDB交叉存储,一个查询可以跨越两个数据库吗?   Apache Sling/felix中的java OSGi slf4j日志记录   为什么当我们想要水平/垂直旋转矩阵时,我们要把这个项除以2?   尝试从外部网页接收JSON字符串时出现安卓 Java NullPointerException   java执行异常:从Callable调用方法时   java在jetty上以调试模式运行webapp,使用maven jetty插件在intellij中构建成功(应用程序应在调试模式下启动)   带有内存数据库的linux Java应用程序的构建时间太长   基于java的随机数单元测试算法   java类型javax。摆动JComponent无法解析   Google日历API和UI小部件Java   java tomcat没有突然和任意地响应   java无法使用jsoup在html中获取图像src   我无法让Java接受键盘输入字符串   java如何开始使用Bambol而不让部署永远继续?   java如何使用另一个类的actionPerformed方法删除一个类/组件中的按钮?   java JSON反序列化brakets{}中的一系列对象