学术堂首页 | 文献求助论文范文 | 论文题目 | 参考文献 | 开题报告 | 论文格式 | 摘要提纲 | 论文致谢 | 论文查重 | 论文答辩 | 论文发表 | 期刊杂志 | 论文写作 | 论文PPT
学术堂专业论文学习平台您当前的位置:学术堂 > 法学论文 > 法律论文 > 刑事侦查学论文

如何有效侦办网络入侵案件

来源:信息技术与网络安全 作者:刘禄源
发布于:2019-08-27 共5200字

  摘要:网络入侵型案件的侦查与取证工作较为复杂, 涉及网站架构、日志分析、恶意代码分析等多种知识。办理此类型案件时, 采用合适的侦查与分析方法, 可以提高破案率与侦办效率。总结提出了网络入侵型案件的侦查思路与分析方法, 将传统的入侵线索侦查与木马逆向分析相结合, 结合实战案例, 对网站的源代码文件与网站服务器日志文件进行分析, 成功定位入侵者植入在网站源文件中的木马程序, 并利用逆向分析的方法确定木马程序的功能, 对此类案件的侦查与取证工作具有借鉴作用。

  关键词:网络入侵; 线索收集; 木马; 逆向分析;

  作者简介: 刘禄源 (1994-) , 男, 硕士研究生, 主要研究方向:网络犯罪侦查、电子数据取证。E-mail:liuluyuan163@163.com。;

  收稿日期:2019-06-13

  基金: 中国刑事警察学院研究生创新能力提升项目 (2018YCYB20);

  Research on investigation and analysis methods of network intrusion cases

  Liu Luyuan

  Department of Cyber Crime Investigation, Criminal Investigation Police University of China

  Abstract:The investigation and forensic work of network intrusion cases is relatively complex, involving a variety of knowledge such as website architecture, log analysis, malicious code analysis and so on. When dealing with such cases, using appropriate investigation and analysis methods can improve the rate of solving cases and the efficiency of investigation. Summarizing and putting forward the investigation thinking and analysis method of network intrusion cases. Combining intrusion clue detection with trojan horse reverse analysis, and combining with actual cases, the source code files and server log files of the website are analyzed, and the trojan horse program embedded in the source files of the website is successfully located. The trojan horse program is processed and determined by using the reverse analysis method. The methods can be used for reference in the investigation and forensic work of such cases.

  Keyword:network intrusion; collection of clues; trojan horse program; reverse analysis;

  Received: 2019-06-13

  0 引言

  网络入侵行为严重威胁着互联网安全,网警实战部门需加大对网络入侵型案件的打击力度,加强网络空间治理,构建清朗的网络空间,维护网络安全。侦办网络入侵案件是网警部门的一项重要工作。采用有效的方法,加大对网络入侵型案件的打击力度,加强网络空间治理,构建清朗的网络空间,维护网络安全。在网络入侵案件中,网络入侵者必会留下痕迹,网络犯罪侦查需要对这些痕迹进行提取并固定为电子数据证据。网站源文件、网站服务器日志、木马文件是办理网络入侵案件中获得线索、提取证据的主要来源。采用有效的侦查方法,可以大大提高此类案件的侦办效率[1]。

  网络入侵常常伴随着植入木马行为,对提取到的疑似木马文件进行分析,确定其功能、危害,甚至可以得到木马控制者的密码、IP等关键信息,为案件充实线索提供判断依据[2]。

  1 侦查思路

  首先确定目标受害网站,提取网站源代码文件与网站的服务器日志,结合网站源代码文件对日志进行分析,提取可疑的访问信息,主要有IP地址、访问时间、访问行为等,确定了疑似木马文件后,定位木马文件的位置,对木马文件进行处理分析。网站入侵案件的线索收集步骤示意图如图1所示。

  2 网站源文件与日志分析方法

  网站源代码文件是网站运行的基础,常见的网站开发脚本语言有ASP、JSP、PHP等。网站服务器日志是记录Web服务器接收处理请求以及运行时错误等各种原始信息的以.log结尾的文件,它记录了网站访问者的访问时间、访问次数、IP地址等信息[3]。

 

  图1 网站入侵案件的线索收集步骤  

  (1) 查看分析网站源代码文件

  在网站代码中寻找可疑文件,可疑文件的特征主要有以下几种:

  (1) 文件格式可疑:网站所使用的编程语言为ASP代码,但是文件目录中出现了PHP、JSP代码文件;

  (2) 文件命名可疑:一般正常的文件命名是有必要的含义与规律的,如index、config等。若出现类似xsasii.php、XXX.asp等命名极不规范的文件,则这些文件很可能是木马文件;

  (3) 文件仿冒:容易和正常文件混淆的文件名,如indexx.asp。

  (2) 分析网站服务器日志

  结合网站源文件,找出可疑文件后,在日志中定位可疑URL,可疑URL的格式一般为“网站网址+网站某个目录+可疑文件名+参数”,如:“www.xxx.cn/loggers/scriptfrom24.php”,使用日志分析软件 (如Web Log Exploer) ,通过搜索功能,定位此URL的访问记录,收集这些访问行为的来源IP地址、访问时间、访问次数、访问参数等信息。然后查看可疑文件的属性,收集其创建日期、修改日期、访问日期,根据日期信息,到日志中查看相应时间段的可疑访问行为 (如上传、注入操作) 。另外需指出的是,有些木马文件在上传时会修改其日期属性,其日期属性可能是篡改后的,需考虑此情况[4]。

  3 木马逆向分析方法

  当一个网站被入侵之后,入侵者通常会留下后门木马,便于将来继续控制该网站。木马制作者为了使木马通过杀毒软件的检测,增加代码阅读难度,对木马程序代码进行了代码混淆、加密、压缩等处理。直接对这种经过复杂化处理的木马文件进行分析阅读往往不可行,必须经过缜密细致的逆向处理,将复杂代码简单化,逐步进行解密、调试,才可以将木马的功能分析出来[5]。

  对经过混淆处理的复杂木马程序,可以通过以下五个步骤进行逆向分析处理:代码结构整理、混淆字段替换、关键节点梳理、运行环境搭建、本地复现分析。木马逆向分析的各个步骤及其作用如图2所示。

  

  图2 木马逆向分析流程示意图  

  3.1 代码结构整理

  经过混淆处理的木马程序,其代码格式被打乱。利用代码编辑工具,经过查找替换处理,将结构混乱的代码初步格式化,利于下一步的分析处理。对于经过了加密、压缩处理的代码,需要针对其加密、压缩方法,对其进行解密、解压。

  3.2 混淆字段替换

  木马制作者常采用代码混淆技术,以通过杀毒软件检验。目前常用的一种代码混淆方法是将代码中关键字段 (如类名、变量名、函数名等) 的英文字母转换为ASCII扩展字符。对这些难以处理的混淆代码进行替换,并以易读易懂的方式重新命名,可以极大地提高代码可读性。有些木马制作者为了进一步增加代码阅读难度,会在代码中插入大量垃圾注释,可以使用正则表达式去除掉这些不需要的部分。

  3.3 关键节点梳理

  木马程序中的关键节点,一般是指函数调用、return返回值、参数传递、输入、输出、循环语句、判断语句等代码位置。在此步骤中,对这些关键节点进行梳理,厘清各函数的调用关系、函数功能、参数含义。根据梳理出的函数关系,合理设置断点可以极大提高手动调试的效率[6]。

  3.4 运行环境搭建

  为了达到本地调试的目的,需要搭建好木马所需的运行环境。木马文件为PHP格式的,可以使用一些集成化环境配置工具 (例如phpStudy、XCMPP、MAMP等软件) 快捷便利地将运行环境搭建起来。木马文件为ASP格式的,需安装配置IIS服务。配置过程中需注意使用的服务类型、开启服务的端口等信息。

  3.5 本地复现分析

  运行环境搭建配置好后,将处理过的木马文件导入环境中,结合步骤“关键节点梳理”,对木马文件手动调试分析。

  4 案例分析

  某本地生活服务网站租用国内某服务器提供商的服务器,网站管理员在运维过程中发现网站源文件中出现了可疑文件,部分文件信息有改动痕迹,怀疑受到了网络入侵。在取得网站源代码文件与网站服务器日志后,利用上文提出的案件侦办方法,对此网站进行侦查取证工作。

  4.1 线索侦查

  查看被入侵网站的源代码文件,经分析确定这是一个主要由ASP脚本语言编写后台代码的网站。经查找,在其文件目录中发现了命名为“scriptfrom24.php”、“xx.php”、“safecode.phpd”的PHP脚本文件。查看“scriptfrom24.php”的属性信息。确定该文件的创建时间与修改时间均为2018年11月18日上午1:24:04。

  使用Web Log Exploer日志分析工具,在网站服务器日志中搜索“scriptfrom24.php”文件的访问记录,结合可疑文件的创建时间与该URL的初次访问时间,获取到访问次数、IP地址等线索。访问时传递的参数为q=1, key=sdfadsgh4513sdGG435341FDGWWDF GDFHDFGDSFGDFSGDFG。日志中可疑URL的访问记录如图3所示。

 

  图3 日志中可疑URL的访问记录  

  4.2 木马分析

  以上一小节得到的疑似PHP木马文件为例,通过手动调试的方法,对该疑似木马文件的功能进行分析。该文件打开后为不具备可读性的乱码。

  (1) 代码结构整理

  使用EmEditor软件打开该木马文件。查找“;”字符,将其全部替换为“;\n”,为了正确识别回车符,勾选使用转义序列功能。在除了语句结尾位置以外的其他位置“;”也可能存在,例如for循环语句中就存在“;”符号,需要对这种特殊情况进行手动处理。代码中存在一个或多个函数,使用查找功能,以“function”为关键字,找到函数定义字段function所在的位置,函数名之后第一对花括号“{}”之间的内容为此函数的内容部分,将“{}”前后做换行处理,并将函数内各行代码对齐,统一右移四个字符长度。

  (2) 混淆字段替换

  该木马程序中的变量、参数、函数名等都经过了编码处理,使用EmEditor软件的批量替换功能,将乱码替换为简洁易懂的名称。将变量替换为“var1”、“var2”、“var3”...等,将函数名替换为“fun_1”、“fun_2”、“fun_3”...等,将参数替换为“para1”、“para2”、“para3”...等,将类名替换为“Class1”、“Class2”、“Class3”...等。

  虽然木马经过了混淆处理,但其原始程序中的运算符 (如‘+’、‘-’、‘*’、‘=’、‘/’、‘%’等) 、基础语句 (如for循环语句、while语句循环、if else语句、switch语句等) 、特殊符号 (如‘$’、‘;’、‘,’、‘.’等) 在一般情况下会保留下来不做处理。在进行乱码字段替换时,需予以注意,避免替换错误。

  对于“/**/”之间的注释,使用正则表达式“/\*{1, 2}[\s\S]*?\*/”将其进行识别,然后批量替换为回车符“\n”。

  (3) 关键节点梳理

  经过以上两个步骤的处理,该木马程序的大致代码结构已经清晰。分析程序中的各个函数,找到其return返回值所在位置,使用echo输出方式,将各个函数的返回值输出,根据输出情况对函数的功能进行判断分析。可以灵活使用echo输出功能对代码进行逐行分析,如有必要可以逐行使用echo,对变量、函数的赋值、运算过程进行细致梳理。

  (4) 运行环境搭建

  本次分析所采用的实验机操作系统为Mac OS (10.14.4版本) ,浏览器为Google Chrome (61.0版本) ,使用MAMP Pro (5.2版本) 软件搭建网站集成环境。把处理后的木马文件重命名为“test.php”,拷贝至“/Applications/MAMP/htdocs”路径下。

  (5) 本地复现分析

  将经过处理的木马文件添加到运行环境之后,开启Web服务,在浏览器中访问“http://127.0.0.1:8888/test.php”,即可查看其运行结果。

  使用浏览器的查看源代码功能,可以看到经过解释器解释后的代码,根据其特征,初步判断此木马为一个多功能WebShell后门。根据password字段,找到了此后门木马的登录密码。但密码经过了32位MD5加密。使用MD5解密工具,解出登录密码。文件中的后门登录账号与密码信息如图4所示。

  使用解出的后门登录密码,访问被挂马网站的木马URL,输入密码后成功进入此后门木马程序。可以看到,通过此WebShell,可以对被控制服务器进行文件管理、反弹Shell、获取系统信息、执行命令等高权限操作。实际木马执行后的界面如图5所示。

  至此,经过一系列的分析,已成功提取到了此案件的入侵者信息 (IP地址、入侵时间、行为等) 以及入侵者植入的木马文件,确定了该木马文件的功能。接下来就可以依据以上信息进行落地侦查,并将提取到的证据进行保全了。

 

  图4 文件中的后门登录账号与密码信息 

 

  图5 实际木马执行后的界面  

  5 结论

  传统的网络入侵案件侦查大多从日志入手,往往忽略对木马的分析处理。通过网站源文件与日志分析、木马文件逆向分析,可以提取到多种有效线索,对可疑木马文件进行验证,确定木马的功能,从中提取有价值的信息,为网络入侵类案件的侦查、取证、鉴定工作带来帮助。将网络入侵痕迹侦查与木马逆向分析相结合,探寻线索交叉点,互相佐证,提高了此类案件侦办效率与成功率。

  实现网站源文件与日志分析自动化、木马逆向处理模型化是未来网络入侵案件侦查研究的发展方向。网络入侵案件的痕迹掩盖手段、木马隐藏与加密混淆手段还有很多,还需更加深入地进行研究。

  参考文献

  [1]刘建军, 黄政.网站入侵案件中的电子证据研究[J].信息网络安全, 2011 (11) :87-90.
  [2]庄建儿.非法入侵网站案件的电子取证分析[J].宁波大学学报 (理工版) , 2012, 25 (4) :55-58.
  [3]陈宇.基于日志分析的网站入侵取证研究[D].济南:山东师范大学, 2015.
  [4]黄政, 宋长伟.木马分析法在网站入侵案件证据勘验中的运用[J].江苏警官学院学报, 2012, 27 (5) :180-181.
  [5]张宇嘉, 张啸川, 庞建民.代码混淆技术研究综述[J].信息工程大学学报, 2017, 18 (5) :635-640.
  [6]徐国天.基于“关键函数”断点设置木马的逆向取证方法[J].中国刑警学院学报, 2018 (5) :119-123.

作者单位:中国刑事警察学院网络犯罪侦查系
原文出处:刘禄源.网络入侵案件的侦查与分析方法研究[J].信息技术与网络安全,2019,38(08):33-37.
相关标签:
  • 报警平台
  • 网络监察
  • 备案信息
  • 举报中心
  • 传播文明
  • 诚信网站