技术cmd.exe病毒

cmd.exe病毒  时间:2021-05-20  阅读:()
应用层持久化攻击技术nEINEI/XCon20152015.
07目录持久化攻击技术背景–什么是持久化技术–固件&内核层持久化技术–应用层持久化技术持久化攻击技术分析–利用COM机制持久化加载–利用注册表持久化隐藏–Duqu2.
0的另类持久化持久化技术对抗本质–解决方案的困局–探讨可能的防御技术需要先明确一下几个概念,持久化技术其实并没有一个公认的准确的定义,这只是研究人员之间所描述的大家都知道的一种技术称谓,那么它具有什么样的特点呢明确一下我们今天的讨论的范畴,应用层的,持久化技术,这些攻击手段,对终端未知防护技术的影响.
我们关注的持久化攻击技术的限制语境:1)定向攻击背景下2)需要保护具有高价值的终端机器3应用层Ring3下的攻击技术.
由以上3点构成的持久化攻击技术才是我们讨论的.
什么是应用层持久化技术–隐藏执行方式–难于防护&甚至难于检测–不是Rootkit归纳–能有效地执行不易察觉的攻击技术手段–是实施攻击的一个基础技术支撑点说起持久化技术,首先绝大多数研究人员都想到的是固件类的攻击,例如,PersistentBIOSInfection@CansecWest2009Icelord&BMWBIOSinfector@Chinesehacker2007|2011HardwareBackdoringisPractical@BlackhatUSA2012VGAPersistentRootkit@ekoparty2012AnalyzingUEFIBIOSfromAttacker&DefenderViewpoints@BlackUSA2014针对固件攻击是有一个很大代价的,编写难度大,需要有一个精英团队,一流的逆向分析人员,一流的开发人员.
很难跨平台,受不同型号硬件产品的局限.
那么即便如此,我们仍然看到了"方程式"组织人员所掌握的利用的硬盘固件感染的技术.
显然,固件持久化技术的高端路线,属于少数精英技术团体擅长的技术.
但对于更广泛的定向攻击里面,应用层持久化技术则更有发展的空间.
应用层持久化被讨论的比较多的集中在COM,注册表等相关技术中,例如,MalwarePersistenceWithHKEY_CURRENT_USERbyherrcore,2015COMObjecthijacking:thediscreetwayofpersistencebyGdata,2014Poweliks:thepersistentmalwarewithoutafilebyGdata,2014WindowsRegistryPersistencebycylance,2013MalwarePersistencewithouttheWindowsRegistrybyMandiant,2010…应用层持久化技术,目前已经演绎成攻击者有效的提供基础支撑的技术手段.
下面我们着重讨论一下COM劫持技术.
利用COM机制持久化加载MD5:88fc61bcd28a9a0dc167bc78ba969fce(Virus.
Win32.
Part.
A[ByteHero2009年更新这条启发规则]Win32/COMpfunc.
A[ESET2014.
11更新的病毒库,给出明确的病毒名称])劫持点(CAccPropServicesClass/CLASS_IMMDeviceEnumerator)其它一些AV产品的病毒名称,显然并不能描述这个病毒样本的特性.
TR/Crypt.
Xpack.
Gen(Avira)Trojan.
Win32.
Encpk.
agsb(AVware)Trojan.
Win32.
Dropper.
Akj(Baidu)Trojan.
Generic.
11671459(BitDefender)Trojan.
KillFiles.
14439(Dr.
web)Trojan.
Crypt(Ikarus)Trojan-Dropper.
Win32.
Agent.
nxtn(Kaspersky)…目前能够确定的样本首次出现时间在2014-09-04,最早给出确切病毒名称时间2014-10-31,近2个月的时间里面为什么没有注意到这个特性另外,Bytehero报的Virus.
win32.
Part.
A也不符合这个病毒样本的特性,因为Bytehero引擎就是Linxer和我一同开发的.
而这条启发式规则就是我在09年底时写的,当时是为了检测恶意程序利用cmd.
exe进程执行BAT文件来完成自删除的行为.
if(pos=strstr(pos,"del")){pos+=i;mid_dif=pos-start;if(min_size>min_dif&&(pos=strstr(pos,"ifexist"))){pos+=i;min_dif=pos-start;if(min_size>min_dif&&(pos=strstr(pos,"goto"))){bret=1;}}}以上的判断虽然能利用启发规则检测出这个样本,但属于启发式所允许的"错报"范畴.
这个劫持技术真正原因是:[GuidAttribute(L"B5F8350B-0548-48B1-A6EE-88BD00B4A5E7")][ClassInterfaceAttribute(ClassInterfaceType::None)]publicrefclassCAccPropServicesClass:IAccPropServices,CAccPropServiceshttps://msdn.
microsoft.
com/en-us/library/windows/desktop/dd371455(v=vs.
85).
aspx有2个劫持点,CAccPropServicesClass–活动的可访问兼容型应用技术.
它通过提供一种从任意UI元素提取信息的有效的方法,实现了对UI元素的程序式访问,IMMDeviceEnumerator–对应的媒体音频视频操作.
显然一些需要这借助这个2个借口实现对应功能的应用程序都会加载对应的COM服务DLL文件.
例如IE,系统放大镜,Explorer,Mediaplayer…感染之前HKEY_CURRENT_USER\Software\Classes\CLSID\{BCDE0395-E52F-467C-8E3D-C4579291692E}\InprocServer32–C:\WINDOWS\system32\MMDevApi.
dllHKEY_CLASSES_ROOT\CLSID\{b5f8350b-0548-48b1-a6ee-88bd00b4a5e7}\InprocServer32–C:\WINDOWS\system32\oleacc.
dll感染之后HKEY_CURRENT_USER\Software\Classes\CLSID\{BCDE0395-E52F-467C-8E3D-C4579291692E}\InprocServer32–C:\WINDOWS\system32\api-ms-win-downlevel-qgvl-l1-1-0.
_dlHKEY_CLASSES_ROOT\CLSID\{b5f8350b-0548-48b1-a6ee-88bd00b4a5e7}\InprocServer32–C:\WINDOWS\system32\api-ms-win-downlevel-qgvl-l1-1-0.
_dl只是这样简单的替换注册表键值就可以实现Dll劫持,我们所关心的是–为什么这2个COM会被加载–是否还有其它类似的COM可以被加载尝试可继续劫持的点–catsrvut.
dll、comsvcs.
dll、wwanapi.
dll、ehstorapi.
dll、ehstorshell…至此,我们的疑问是,是否有过类似的技术的样本通过关联的分析我得到如下信息,–2012年sophos的–https://www.
sophos.
com/en-us/threat-center/threat-analyses/viruses-and-spyware/Troj~Mdrop-DZB/detailed-analysis.
aspx–早在2009年就有这样的方法.
著名的conficker蠕虫–http://www.
trendmicro.
com/vinfo/us/threat-encyclopedia/archive/malware/worm_downad.
gjx–2008年TrendMicroblog–http://www.
trendmicro.
com/vinfo/us/threat-encyclopedia/archive/malware/troj_dloader.
chx–最早追溯到2006年McAfeeLabs发布的一个病毒报告–http://www.
mcafee.
com/threat-intelligence/malware/default.
aspxid=139825都是使用这样的技术,这对任何以公司的技术人员来讲都不是新的技术,但问题是近十年的时间我们做了什么–仍然可以用这样的方式穿透安全软件防护(实测最新版Kaspersky2015,BD2015,Eset2015…)–为什么到目前为止缺少实际的保护关键的因素,COM加载机制的是由操作系统提供,是客户端程序所依赖的基础–这是系统的允许方式,本身不具有非白即黑的判别属性提供防护手段的终端安全工具–McAfeeVSE&KasperskyKIS&COMODOFirewallDefense+–…对待这样的COM劫持技术,我们不能有效的提供一个区分手段,做到无误报的拦截.
利用注册表持久化隐藏Poweliks–ESET&KernelMode.
infoforum&thepersistentmalwarewithoutafile–可以不存储在文件系统&硬盘扇区–如何能运行任意代码Md5:0181850239CD26B8FB8B72AFB0E95EACPoweliks执行步骤–Poweliks->Rundll32.
exe->powershell.
exe->dllhost.
exe–->poweliks:0Poweliks:rundll32.
exejavascript:"\.
.
\mshtml,RunHTMLApplication";document.
write("\74scriptlanguage=jscript.
encode>"+(new%20ActiveXObject("WScript.
Shell")).
RegRead("HKCU\\software\\microsoft\\windows\\currentversion\\run\\")+"\74/script>")Download:WindowsXP-KB968930-X86-ENG.
EXERundll32:"C:\Windows\system32\windowspowershell\v1.
0\powershell.
exe"iex$env:aPoweliks:"C:\Users\Jifeng\Desktop\poweliks.
exe:0"关键的数据藏在了哪里–观察rundll32的命令–rundll32.
exejavascript:"\.
.
\mshtml,RunHTMLApplication";document.
write("\74scriptlanguage=jscript.
encode>"+(new%20ActiveXObject("WScript.
Shell")).
RegRead("HKCU\\software\\microsoft\\windows\\currentversion\\run\\")+"\74/script>")–http://thisissecurity.
net/2014/08/20/poweliks-command-line-confusion/(这篇blog已经详细的解释这个原理,我们不做过多说明,)请在IE浏览器里面输入下面命令,都会执行出一个对话框,说明后面的alert,MsgBox都被当作脚本执行了.
javascript:"\.
.
\mshtml,RunHTMLApplication";alert('Poweliks')或者vbscript:MsgBox("Poweliks",x,"y")RUNDLL.
EXE,https://support.
microsoft.
com/en-us/kb/164787区别–让RunHTMLApplication函数帮我们执行脚本代码–IE里面RunHTMLApplication运行脚本代码(js,vbs-Integritylevel–Low|Appcontainer–Rundll32里面运行RunHTMLApplication执行脚本(js,vbs)-Integritylevel-Medium引申来看–任何能加载MSHTML模块都是潜在的利用对象,在IE的sandbox进程里面完整性即便是Low或是AppContainer这些都是不能执行高权限代码的环境,而在其它进程进程模块里面确不一定存在这个问题.
加载Mshtml.
dll模块注册表里面的信息@[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]@="rundll32.
exejavascript:mshtml,RunHTMLApplication\";document.
write(\"\\74scriptlanguage=jscript.
encode>\"+(new%20ActiveXObject(\"WScript.
Shell\")).
RegRead(\"HKCU\\software\\microsoft\\windows\\currentversion\\run\74/script>\")"kXcAAA==W!
x^DkKxP^WTcV*ODHax+h,)mDk\\p64N+1YcJ\\dX:scj+M\\n.
oHSuP:nvcTr#IXRKw+`r!
2:JSJ4YO2=zz6C+(NGc^G:JVKo_VGL{JQVBWl^/nbp6RdnRundll32.
EXE2MSHTMLRunHTMLApplication注册表代码+数据Nc#p.
Y;Mx,Fi)mmOm4`n#PDnO!
Dx,Ti)8+{q+&pl{xnh~)1Yr\\pr(Ln^D`Jj1DrwDUtn^Vr#iStbs+v+Z'Wb`DDXPA'mR2X2Cx92\\rDGUs+UYUODbxLdvJ]ArNrDuE*i2{h3J-'/HdY:f'-ArNWSdwKh+Md4+^V'--FT'-2WSnDktns^R+anriW'…终端安全软件的扫描引擎的输入对象文件,注册表,cookie,URL…,一直以来,作为恶意程序的实体始终是文件,当恶意软件的实体是注册表里面的某个键值时,所有的安全软件都将选择性的"失明"注册表里面的信息解密后是什么–第一层解密functiongd{Param([Parameter(Position=0,Mandatory=$True)][Type[]]$Parameters,[Parameter(Position=1)][Type]$ReturnType=[Void]);$TypeBuilder=[AppDomain]::CurrentDomain.
DefineDynamicAssembly((New-ObjectSystem.
Reflection.
AssemblyName("ReflectedDelegate")),…System.
Runtime.
InteropServices.
HandleRef((New-ObjectIntPtr),$UnsafeNativeMethods.
GetMethod("GetModuleHandle").
Invoke($null,@($Module)))),$Procedure));}[Byte[]]$p=[Convert]::FromBase64String("VYvsg+xoamtYamVmiUWYWGpyZolFmlhqbmaJRZxYamVmiUWeWGpsZolFoFhqM2aJRaJYajJmiUWkWGouZolFplhqZGaJRahYamxmiUWqWGaJRaxmiUWuZKEwAAAAx0XAVmlydMdFxHVhbEHHRchsbG9jxkXMAItADFODwAxWx0XQTG9hZMdF1ExpYnLHRdhhcnlBxkXcAMdFsEdldFDHRbRyb2NBx0W4ZGRyZWbHRbxzc8ZFvgCLyFeLCWaDeSwYdSWLcTCNVZgz/yvyjRR+ilQVmDJUfZj2wkF1BkeD/wxy6oP/DHQ5O8h1zotVCItCPItEEHiDZfgAA8KLeCCLcByLWCSLQBgD8gPaA/qJdeiJXe注册表里面的信息解密后是什么–第二次解密UhjkXjefEXjrfEXjnfEXjefEXjlfEXj3fEXj2fEXj.
fEXjdfEXjlfEXfEfEd0irtalAloc@…_beginthreadexmsvcrt.
dllIsWow64Processkernel32%1d.
%1d.
2`r2耲mr耲2~r22r2rrrrrrrrrrr(r(rC(r–这样的技术什么时候存在的呢–2014-04之前未看到任何关于利用mshtml,RunHTMLApplication利用的讨论推测的一个可能情况–源自于对mshta.
exe的逆向工程mshta.
exever11.
0.
9600.
16428(Microsoft(R)HTMLApplicationhost)int__stdcallWinMain(inta1,inta2,LPCSTRlpMultiByteStr,inta4){…}这里mshta里面的实现方式同样本里面几乎是一模一样的.
所以我推测是攻击者通过mshta里面找到了攻击的灵感,毕竟mshta之前也曾有过严重漏洞MS-05-016.
另外,如果COM劫持和注册表隐藏组合一下呢组合\"+(new%20ActiveXObject(\"WScript.
Shell\")).
RegRead(\"HCRC\\CLSID\\{73E709EA-5D93-4B2E-BBB0-99B7938DA9E4}\\LocalServer32\74/script>\")"另外的攻击案例:一例"无实体文件"恶意样本分析报告http://mp.
weixin.
qq.
com/s__biz=MjM5MTA3Nzk4MQ==&mid=207025811&idx=1&sn=76130bdd0d6273af23f234e13faa160f#rd这篇分析中虽然没有给出样本的MD5,但根据分析的内容上来推断就是同poweliks注册表隐藏技术是完全一致的.
当然,这个无实体文件的技术手段和方程式里面的技术公开可能有先关联关系.
在这里我们不去推导方程式和这个样本技术的关联性,我们只是想说明,poweliks技术所带来的影响.
思考:–会被执行是由系统注册表机制决定的–任何可以调用mshtml模块的操作都是潜在可能的利用点,显然Thunder,BingDict…都可以被利用Duqu2.
0的另类持久化Duqu2.
0感染特点(2015-06byKaspersky)–仅存活于被感染机器的内存中–重启即消失–尽最大的可能规避终端安全软件检测–难于取证,需要确定具体机器,做内存快照分析持久化的安装机制利用Windowsinstall安装包(MSI)来执行恶意代码利用计划任务来启动MSImsiexec.
exe/i"C:\\[…]\tmp85f2.
tmp"/qPROP=9c3c7076-d79f-4c…可以使用orca用来查看MSI文件格式/I–安装命令/q静默安装PROP设定为一个解密安装包内数据的密钥为什么使用MSI来执行–利用Windowsinstall安装包(MSI)来执行恶意代码不是新的利用方式,例如类似的Innosetup,installshield,RAR…–"食猫鼠"病毒利用打包的MSI程序执行恶意代码,2014年初.
–利用计划任务来启动MSI执行代码,2011Duqu.
–CustomAction里面可以自定义脚本为什么使用MSI来执行–Duqu2.
0操作如此复杂的,多变的执行方式,msiexec作为外壳程序是最好的利用对象了.
要在msi里面完成,解密,加载驱动,内核提权操作,同时下载更复杂的msi安装包,内网的横移等复杂操作msiexec进程是最好的保护伞了.
为什么使用MSI来执行另外一件有关的事情–今年7月,微软发布了MS-15-074公告–CVE-2015-2371–Pwn2own2015–MicrosoftWindowsInstallerCustomActionscriptPrivilegeEscalation.
漏洞的原因是允许安装包里面的Vbscript允许customaction里面操作,repair,change这个漏洞就可以使得注册表里面相关的那个exe进程获得一个system权限,不用编写太多代码,就可以以system权限允许的漏洞,这个可能是最简单的.
总之,安装包所带来的问题远比我们想象的多.
思考:–如此复杂部署没有触发更多警报是由系统程序MSI提供的壳"外衣"决定的–解决方案的困局–难于设计出彻底的解决方案–难于积极的主动预防&阻断入侵信标公式:阻止=注入恶意代码+添加某些注册表+外部服务器byMandiant显然在面对持久化攻击技术的时候这个入侵信标的公式就不在适合了.
有那么多的进程可以做防护伞,smms,csrss,wininit,dwm,vstskmgr…有那么多的注册表项可以被利用notify,CLSID.
.
\Instance,filter…三者的共同点–COM劫持/注册表隐藏/MSI执行–A.
在操作系统的提供的基础功能上加以发挥(很容引出相关的变形技术加以模仿)–B.
提取特征的思路并不能有效预防(具备不可预先估算的多个劫持点)–C.
也不具备HIPS拦截的必要条件(风险API调用&低频率的用户交互)COM劫持,注册表隐藏,MSI调用这些都属于合法操作.
有大量社区讨论Poweliks的清除方案,并不是难于清除,而是不知道藏于何处.
就在10天前,FireEye发布了关于WMI的攻击技术报告,从另外方面证实我们关于持久化本质的探究的正确性.
攻击者利用WMI(windows管理框架)提供给计算管理员的命令来执行隐藏数据,检测虚拟机环境,下载,执行命令操作…利用windows管理框架可以对1、本地计算机管理,2、远程单个计算机管理3、远程多个计算机管理4、使用远程会话的计算机管理(如Telnet)5、使用管理脚本的自动管理…一般,stunext利用打印机服务加载dll被认为是最早的利用wmi的公开案例.
利用WMI机制的持久化技术–2015-08-08,FireEye研究员讨论了这个方向的持久化技术–实际利用WMI攻击可追溯到2008年,TheMothTrojan@KiwiCon2008FireEyeBlog-WindowsManagementInstrumentation(WMI)Offense,Defense,andForensicshttps://www.
fireeye.
com/blog/threat-research/2015/08/windows_managementi.
htmlAbusingWindowsManagementInstrumentation(WMI)ToBuildAPersistentAsynchronousAndFilelessBackdoor@BlackHatUSA2015https://www.
blackhat.
com/docs/us-15/materials/us-15-Graeber-Abusing-Windows-Management-Instrumentation-WMI-To-Build-A-Persistent%20Asynchronous-And-Fileless-Backdoor.
pdf这又是利用系统提供的特性来完成攻击的情况.
防御者的威胁检测模型缺陷(规则化,工程化,平台化)–A.
任何安全公司都不可能获得所有恶意样本–B.
已有样本集合也存在不能提取出规则的"灰"样本–C.
恶意软件不一定有API层面的恶意行为–D.
目前,我们所不能认知的"技术"持久化攻击技术前3点可以用时间,及时捕获来弥补.
我们的终端防御,就是以牺牲单一节点安全,来获得所有节点安全的策略.
但对定向攻击技术来说,却不是这样,单一节被攻破,就是意味着防护失败.
所以第4点可能是我们未来几年最大的威胁.
解决方案的困局–公开事物里面往往隐藏这非常机密的计谋备周则意怠,常见则不疑.
阴在阳之内,不在阳之对.
太阳,太阴.
-瞒天过海之计对比最后一句,太阳,太阴,说的就是最公开最不值得怀疑的事情,往往隐藏着最最深沉目的,应用层持久化攻击及时就是利用操作系统给予的权力做着攻击者的事情.
持久化技术的对抗本质应用层持久化技术的一个趋势是使用操作系统特性来达到执行及数据隐藏的意图,不触发报警,甚至淹没于和合法操作当中.
一例针对中方机构的准APT攻击中所使用的样本分析(AntiyCert)http://www.
antiy.
com/response/APT-TOCS.
html越来越多战争中的战术行为扩散到更广泛的网络空间环境中.
----BruceSchiner持久化攻击技术本质不是技术,而是一种巧妙的利用战术思想,转系统功能为我所用.
目前探讨可能的防御技术还没有更好的区分应用层持久化攻击的方式终端的日志信息记录事后的分析与确认因为我们相信任何的攻击都会留下蛛丝马迹,对定向攻击的研究中,更多的是依赖于人工进行分析确认,而终端上是会留下攻击手法的.
之前我曾说,"应用层持久化技术是严密攻防体系下,攻击者所要走的必然的道路"现有的防护体系,从最初的以周为响应时间,缩短为天,小时,甚至是分钟,秒.
这一切都是针对可以被检测的扫描对象而言的,当持久化技术使用后,攻击数据,甚至是代码不再以我们所认知的文件实体存在后,这意味着攻击者的新的反制方式的出现.
但显然,目前防御者还没有做好足够的准备工作.
参考资料1.
https://securelist.
com/files/2015/06/The_Mystery_of_Duqu_2_0_a_sophisticated_cyberespionage_actor_returns.
pdf2.
https://blog.
gdatasoftware.
com/blog/article/poweliks-the-persistent-malware-without-a-file.
html3.
http://social.
technet.
microsoft.
com/Forums/zh-CN/5ce86ff1-eadd-4ae7-89c9-f2ba0d7117a6/actionthreadDisplayName=powershell-get-environment-variable4.
http://blog.
cylance.
com/windows-registry-persistence-part-2-the-run-keys-and-search-order5.
https://blog.
gdatasoftware.
com/blog/article/com-object-hijacking-the-discreet-way-of-persistence.
html

乐凝网络支持24小时无理由退款,香港HKBN/美国CERA云服务器,低至9.88元/月起

乐凝网络怎么样?乐凝网络是一家新兴的云服务器商家,目前主要提供香港CN2 GIA、美国CUVIP、美国CERA、日本东京CN2等云服务器及云挂机宝等服务。乐凝网络提供比同行更多的售后服务,让您在使用过程中更加省心,使用零云服务器,可免费享受超过50项运维服务,1分钟内极速响应,平均20分钟内解决运维问题,助您无忧上云。目前,香港HKBN/美国cera云服务器,低至9.88元/月起,支持24小时无理...

数脉科技:香港服务器低至350元/月;阿里云CN2+BGP线路,带宽10M30M50M100M

数脉科技(shuhost)8月促销:香港独立服务器,自营BGP、CN2+BGP、阿里云线路,新客立减400港币/月,老用户按照优惠码减免!香港服务器带宽可选10Mbps、30Mbps、50Mbps、100Mbps带宽,支持中文本Windows、Linux等系统。数脉香港特价阿里云10MbpsCN2,e3-1230v2,16G内存,1T HDD 或 240G SSD,10Mbps带宽,IPv41个,...

Webhosting24:$1.48/月起,日本东京NTT直连/AMD Ryzen 高性能VPS/美国洛杉矶5950X平台大流量VPS/1Gbps端口/

Webhosting24宣布自7月1日起开始对日本机房的VPS进行NVMe和流量大升级,几乎是翻倍了硬盘和流量,价格依旧不变。目前来看,日本VPS国内过去走的是NTT直连,服务器托管机房应该是CDN77*(也就是datapacket.com),加上高性能平台(AMD Ryzen 9 3900X+NVMe),还是有相当大的性价比的。此外在6月30日,又新增了洛杉矶机房,CPU为AMD Ryzen 9...

cmd.exe病毒为你推荐
长江航道周服务信息accessroute的人迅雷请仔细阅读在本报告尾部的重要法律声明考生itunescontentcss支持ipad支持ipad支持ipad支持ipad
华众虚拟主机管理系统 yaokan永久域名经常更换 视频空间租用 VPS之家 vps虚拟服务器 如何注销域名备案 tier 主机屋免费空间 新世界电讯 卡巴斯基永久免费版 云全民 tna官网 东莞服务器 江苏双线服务器 联通网站 lamp架构 摩尔庄园注册 空间申请 免费主页空间 汤博乐 更多