官方公众号企业安全新浪微博
FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。
FreeBuf+小程序
关于QRExfiltrate
QRExfiltrate是一款功能强大的数据转换与提取工具,QRExfiltrate基于命令行使用工具实现其功能,可以帮助广大研究人员将任意二进制文件转换为二维码GIF图像,而这些数据随后可以通过重新组装,从而从空气间隙系统中实现数据提取。
该工具是一个概念验证实例,用于演示DLP(数据泄露防护)软件的安全脆弱性。
工具运行机制
该工具可以获取一个二进制文件,并将其转换为一系列的二维码图像,然后将这些图像组成和一个GIF文件,而任何标准的二维码读取器都可以轻松对其进行重组。在这种情况下,广大研究人员将能够从大多数DLP系统中提取出目标数据,并且不会被检测到。
工具依赖组件
QRExfiltrate的正常运行需要使用下列依赖组件:
qrencode
ffmpeg
工具下载
该工具基于Shell开发,因此建议在Windows设备或支持Shell脚本运行的设备上使用该工具。
广大研究人员可以使用下列命令将该项目源码克隆至本地:
git clone https://github.com/Shell-Company/QRExfil.git
工具使用
如需使用QRExfiltrate,可以直接打开命令行终端窗口,并导航到QRExfiltrate项目目录(包含了QRExfiltrate脚本)中。
接下来,广大研究人员可以运行下列命令将二进制文件转换为二维码GIF动图:
./encode.sh ./draft-taddei-ech4ent-introduction-00.txt output.gif
工具使用演示
encode.sh <inputfile>
其中,<inputfile>是要转换的二进制文件的路径,而<outputfile>,如果未指定输出,则使用当前目录下的output.gif作为输出gif文件的路径。
命令执行完成后,我们将拿到一个GIF文件,其中就包含二进制文件中的数据。随后,我们就可以根据需要来传输此文件,并使用任何标准的二维码读取器来重组数据了。
生成结果
工具限制
QRExfiltere受源数据大小的限制,每帧的qrencoding上限为64字节,以确保生成的图像具有统一的大小和形状。此外,转换为二维码会导致大量存储开销,平均而言,生成的gif比原始gif大50倍。最后,QRExfiltere受到二维码读取器功能的限制。如果读取器无法从GIF中检测到QR码,则数据将无法重新组装。
项目地址
QRExfiltrate:【GitHub传送门】