42
11
2016
11
年 月
第
卷
第
期
计
算
机
工
程
Vol. 42
No. 11
Computer Engineering
November 2016
·
·
: 1000-3428( 2016) 11-0139-08
: A
: TP309
安全技术
文章编号
文献标志码
中图分类号
Python
基于符号执行的
攻击脚本分析平台
, ,
邱 洋 王轶骏 薛 质
(
,
上海交通大学 信息安全工程学院 上海
200240)
: , ,
要 传统的静态分析方法大多不能准确处理脚本与网络交互的过程 且会引入不可达路径 动态分析则需要搭
摘
。 ,
建实验环境和手工分析 针对上述问题 提出一种基于符号执行的
Python PyExZ3 + 。
攻击脚本分析平台
通过对
Python
Python
, ,
脚本的动态符号执行及路径探索 可以获得触发攻击的输入流量及相应的输出攻击载荷 以此实现对
。 , 。
攻击脚本的自动化分析 采用循环识别及运行时解析等优化策略 使程序更快进入目标代码 实验结果表明
,
PyExZ3 +
CHEF,PyExZ3
,
,
PyExZ3 +
能够对目标脚本
相比
程序进行动态检测 实现高效 可行的自动化分析
; Python
等符号执行工具 具有更高的路径覆盖率和执行效率 同时
,
、
。
:
; ; ; ;
语言 动态分析 测试数据生成 攻击脚本 路径探索
关键词 符号执行
:
,
,
.
Python
[J].
攻击脚本分析平台
,2016,42( 11) :
计算机工程
中文引用格式 邱 洋 王轶骏 薛 质 基于符号执行的
139-146.
英文引用格式
: Qiu Yang,Wang Yijun,Xue Zhi. Python Attack Script Analysis Platform Based on Symbolic Execution[J].
Computer Engineering,2016,42( 11) :139-146.
Python Attack Script Analysis Platform Based on Symbolic Execution
QIU Yang,WANG Yijun,XUE Zhi
( College of Information Security,Shanghai Jiaotong University,Shanghai 200240,China)
【Abstract】The traditional static analysis method cannot handle the interaction between the script and the network,and it
introduces inaccessible path. The dynamic analysis needs to set up the experimental environment and needs manual
analysis. To solve these problems,this paper proposes a Python attack script analysis platform called PyExZ3 + based on
symbolic execution. Through the dynamic symbol execution and path exploration of Python script,it can get the input
traffic and the corresponding output attack payload,which can realize the automatic analysis of Python attack script.
PyExZ3 + uses loop identification and run time solver optimization strategy to improve the path coverage and the
efficiency of symbolic execution. Experimental results show that PyExZ3 + has a higher path coverage and execution
efficiency compared with the existing symbolic execution tools,such as CHEF and PyExZ3. Besides,PyExZ3 + can
dynamically detect the target script’s payload and perform feasible automated analysis efficiently.
【Key words】symbolic execution; Python language; dynamic analysis; test data generation; attack script; path exploration
DOI: 10. 3969 /j. issn. 1000-3428. 2016. 11. 023
当针对 某 种 软 件 或 应 用 的 漏 洞 进 行 攻 击 的
0
概述
Python
,
脚本在网上泄露后 安全维护人员不能在第
、
跨平台脚本化 虚拟化是未来的编程语言方向
,
,
一时间对存在漏洞的软件或服务器进行加固修补
而防御该漏洞的规则却需要等待研究人员搭建实验
Python
,
作为流行的动态解释性语言 有着广泛的应
。
,Python
,
是编写网络攻击脚本的首选 如
。
用
一方面
环境分析后才能得到 在这段时间内存在漏洞的主
。 , Python
机暴露于危险的环境中 因此 需要快速对
Kali Linux
在著名的渗透测试平台
提供的网络工具
Python ;
语言 另一方
,
中 几乎一半以上使用的都是
,
攻击脚本的攻击特征进行自动化提取来生成规则
,
面 程序员也经常使用
Python
。
作为网络服务器软件
为主机提供及时的保护
。
,
动态符号执行作为自动化白盒测试的一种 采
的开发语言
:
基金项目 中国信息安全评测中心科研项目
( CNITSEC-KY-2013-009 /2) 。
:
作者简介 邱
( 1991—) , , ; 。
,
;
,
、 、
女 硕士研究生 主研方向为网络安全 王轶骏 讲师 博士 薛 质 教授 博士生导师
,
洋
: 2015-10-15
: 2015-11-18
修回日期
E-mail: qy220@ 126. com
收稿日期
全部评论(0)