推广软件开发分析规范
一、规范目的
本规范针对推广软件包,从开发的角度,分析推广包是否存在360无法过白以及与我司利益相冲突的情况,并明确操作流程。
二、操作流程
根据360反馈的过白失败原因,针对各种可能存在的原因采取相应的操作流程。
(一)、分析是否存在无法访问的域名
1、用反汇编工具IDA打开需要分析的推广软件二进制文件:
File->Open…->二进制文件(exe文件)
2、等待IDA自动分析过程完成。
3、用IDA工具查看该二进制文件包含的字符串:
View->Open subviews->Strings
4、在IDA字符串窗口查看域名字符串:
5、在接口测试工具Postman中请求查找到的域名:
如果Status显示的是非200的返回值,说明该域名无法正确访问,如果出现这种情况,则有可能无法过白。
(二)、分析是否存在无法访问的接口
1、在测试环境下运行Wireshark 络封包分析工具。
2、安装并运行需要分析的推广软件的二进制文件。
3、在IDA中查看需要测试的域名。
4、在Wireshark的过滤规则输入框中按如下规则过滤域名:
http.host contains 域名
5、在Wireshark的封包列表中将会显示所有与该域名相关的接口信息:
6、在Wireshark的封包详细信息中查看需要测试的域名接口:
7、在接口测试工具Postman中请求查找到的域名:
如果Status显示的是非200的返回值,说明该域名无法正确访问,出现这种情况,则有可能无法过白。
(三)、分析是否访问不存在的文件
1、用IDA工具查看该二进制文件包含的字符串:
View->Open subviews->Strings
2、在IDA字符串窗口搜索常见文件后缀,IDA字符串窗口会显示该二进制代码中包含的该类型文件名:
3、在文件搜索工具everything中逐一搜索上述出现的文件名。
4、安装并运行需要分析的推广软件的二进制文件。
5、在文件搜索工具everything中再次逐一搜索上述出现的文件名,将搜索结果与上次搜索结果进行对比,查看是否有上述文件生成,如果没有上述文件生成,则有可能无法过白。
(四)、分析是否存在杀软检测行为
1、在IDA中加载需要分析的推广软件二进制文件。
2、在IDA的字符串窗口搜索如下字符:
“qqpcrtp.exe”、“qqpctray.exe”、“zhudongfangyu.exe”、“360tray.exe”、“kxescore.exe”、“baiduantray.exe”、“msmpeng.exe”、“2345safetray.exe”、“HipsDaemon.exe”、“HipsTray.exe”。
3、如果存在上述字符串,则有可能无法过白。如果不存在上述字符串,则在IDA中查看是否包含如下类似代码,如果存在则有可能无法过白。
(五)、分析是否存在 吧环境检测行为
1、在IDA中加载需要分析的推广软件二进制文件。
2、在IDA的字符串窗口搜索如下字符串:
“vdiskbus”、“netzone”、“diskless”、“richdisk”、“deepin”、“kic.disk”、“nmenu”、“alddisk”、“vhd cms”、“mzd.live”、“ccboot”、“vnd scsi”、“bnvirtualscsihba”、“bxp virtual”、“s.t. virtual”、“kb.mdisk”、“hin virtual”、“obm virtual”、“msft virtual”。
3、如果存在上述字符串,则有可能无法过白。如果不存在上述字符串,则在IDA中查看是否包含如下类似代码,如果存在则有可能无法过白。
(六)、分析是否存在检测调试环境的行为
1、在IDA中加载需要分析的推广软件二进制文件。
2、在IDA的字符串窗口搜索如下字符:
“IsDebuggerPresent”、“CheckRemoteDebuggerPresent”。
3、如果存在上述字符串,则有可能无法过白。如果不存在上述字符串,则在IDA中查看是否包含如下类似代码,如果存在则有可能无法过白。
(七)、分析是否存在明文传输密码,不符合安全规范
1、在测试环境下运行Wireshark 络封包分析工具。
2、安装并运行需要分析的推广软件的二进制文件,并进行登录操作。
3、在Wireshark的封包列表中查看相关 络请求封包。
4、在Wireshark的封包详细信息中查看 络请求封包中的用户名和密码字段,如果是明文传输的,有可能无法过白。
(八)、分析是否存在反调试行为
1、用动态调试工具OllyDBG打开需要分析的推广软件二进制文件:
File->Open…->二进制文件(exe文件)
2、在动态调试工具OllyDBG中运行该二进制文件:
Debug->Run(F9)
3、观察二进制文件的运行情况,如果没有错误提示且自动退出应用程序,说明该二进制文件存在检测调试环境的行为,有可能无法过白。
(九)、分析是否存在浏览器变现行为
1、在IDA中加载需要分析的推广软件二进制文件。
2、在IDA的字符串窗口搜索常见浏览器进程名。
3、如果存在常见浏览器进程名字符串,则有可能无法过白。如果不存在上述字符串,则在IDA中查看是否包含与浏览器相关操作的代码,如果存在则有可能无法过白。
(十)、分析是否存在检测虚拟机环境的行为
1、在IDA中加载需要分析的推广软件二进制文件。
2、利用IDA的反编译成伪代码(F5)的功能按照代码流程分析代码。
View->Open subviews->Generate pseudocode
3、检测虚拟机分为如下几种情况:
(1)获取虚拟 络适配器,因为虚拟机虚拟出来的 卡带有关键字VM或Virtual,代码如下:
(2)直接检测是否运行VMWare虚拟机程序。
(3)通过LDT和GDT检测虚拟机。代码如下:
(十一)、分析是否存在检测MAC地址的行为
1、在IDA中加载需要分析的推广软件二进制文件。
2、利用IDA的反编译成伪代码(F5)的功能按照代码流程分析代码。
View->Open subviews->Generate pseudocode
3、按照程序流程查看代码,如果包含以下类似代码,包括典型的获取 络适配器信息以及mac地址格式化信息,则有可能无法过白。
(十三)、分析是否存在请求不相关的baidu、jd、taobao等 站
1、在IDA中加载需要检测的二进制文件。
2、待IDA自动分析结束。
3、在IDA的字符串窗口中查找“baidu”、“jd”、“taobao”等字符串。如果存在相关 站的推广行为,如下:
(1)百度的推广链接:
https://www.baidu.com/n=48021271_17_hao_pg
(2)京东的推广链接:
https://www.jd.com/u=true&utm_source=www.jiegeng.com&utm_medium=tuiguang&utm_campaign=t_1000159524_&utm_term=47cf2e1e151e49158747cacf2b74b6ca
(3)淘宝的推广链接:
https://ai.taobao.com/id=mm_121791806_21458534_72100314
4、如果存在以上的推广链接,则有可能存在无法过白的情况。
(十四)、分析是否存在链接库版本错误的情况
1、在测试机环境下安装并运行需要分析的推广软件二进制文件。
2、点击运行安装目录下的所有可执行程序,如果弹出如下类似提示:
在安装目录下可以发现存在libcurl.dll,而提示计算机丢失libcurld.dll,说明可执行程序在编译生成的时候链接的是debug版本的动态链接库,而安装程序释放的是release版本的动态链接库,这样导致程序无法正常运行,则有可能存在无法过白的情况。
3、可以通过PEiD工具查看验证可执行程序的编译版本:
可以看到通过PEiD工具查看idesk.exe的编译生成选项是debug版本的,而libcurl.dll是release版本的。
(十五)、分析是否存在服务并存在云控行为
1、在测试机环境下安装并运行需要分析的推广软件的二进制文件。
2、打开进程侦测工具Process Explorer并观察系统中的进程情况。
3、查看是否存在异常进程存在于系统服务svchost.exe中:
4、在Process Explorer中查看由异常进程拉起的其他进程:
5、在任务管理器中查看相关进程拉起的推广进程,根据进程启动参数可以判断是否存在云控行为:
6、如果存在以上行为的,可能会存在无法过白的情况。
(十六)、分析是否存在加密PE数据并解密运行的行为
1、利用静态分析工具IDA加载需要分析的推广软件的二进制文件。
2、等待IDA自动分析完成,并搜索是否含有与资源加载相关函数:
FindResourceW
LoadResource
3、定位到相关代码处,分析代码是否存在资源加载的行为:
可以看到加载的资源类型是二进制数据。
4、接下来应该判断该二进制数据是否是PE格式文件,继续跟踪上述加载二进制数据资源的代码,比如上述代码中的函数sub_100062B0:
其中23117为十六进制5A4D,其中5A4D为字符串“MZ”,是PE文件的IMAGE_DOS_HEADER的标志:
根据此标志判断解密后的数据是否为PE格式文件,可以判断为加解密PE文件行为,如果该PE文件存在360 毒或 警行为,则有可能整个可执行程序无法过白。
三、备注(新增的360反馈)
根据360反馈的过白失败的原因,如果不在上述范围,则将形成新的操作流程的检测方法加入到该规范,持续更新。
新的改变
- 全新的界面设计 ,将会带来全新的写作体验;
- 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
- 全新的 KaTeX数学公式 语法;
- 增加了支持甘特图的mermaid语法1 功能;
- 增加了 检查列表 功能。
功能快捷键
撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
合理的创建标题,有助于目录的生成
直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用语法后生成一个完美的目录。
如何改变文本的样式
强调文本 强调文本
加粗文本 加粗文本
标记文本
删除文本
引用文本
H2O is是液体。
210 运算结果是 1024.
插入链接与图片
链接: link.
图片:
居中的图片:
当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。
如何插入一段漂亮的代码片
去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 .
生成一个适合你的列表
- 项目
- 项目
- 项目
- 项目
- 项目1
- 项目2
- 项目3
- 计划任务
- 完成任务
创建一个表格
一个简单的表格是这么创建的:
项目 | Value |
---|---|
电脑 | $1600 |
手机 | $12 |
导管 | $1 |
设定内容居中、居左、居右
使用居中
使用居左
使用居右
第一列 | 第二列 | 第三列 |
---|---|---|
第一列文本居中 | 第二列文本居右 | 第三列文本居左 |
SmartyPants
SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:
TYPE | ASCII | HTML |
---|---|---|
Single backticks | ‘Isn’t this fun | |
Quotes | “Isn’t this fun | |
Dashes | – is en-dash, — is em-dash |
创建一个自定义列表
- Markdown
- Text-to- HTML conversion tool
- John
- Luke
Authors
如何创建一个注脚
一个具有注脚的文本。2
注释也是必不可少的
Markdown将文本转换为 HTML。
KaTeX数学公式
您可以使用渲染LaTeX数学表达式 KaTeX:
Gamma公式展示 Γ ( n ) = ( n 1 ) ! n ∈ N Gamma(n) = (n-1)!quadforall ninmathbb N Γ(n)=(n/span>1)!/span>n∈N 是通过欧拉积分
Γ ( z ) = ∫ 0 ∞ t z 1 e t d t   . Gamma(z) = int_0^infty t^{z-1}e^{-t}dt,. Γ(z)=∫0∞/span>tz/span>1e/span>tdt.
你可以找到更多关于的信息 LaTeX 数学表达式here.
新的甘特图功能,丰富你的文章
- 关于 甘特图 语法,参考 这儿,
UML 图表
可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图::
这将产生一个流程图。:
- 关于 Mermaid 语法,参考 这儿,
FLowchart流程图
我们依旧会支持flowchart的流程图:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!