宣称全世界加密最快的勒索软件——LockBit 2.0
2021-08-23
威胁等级:★★★★
Lockbit勒索软件早在2019年9月就被发现,当时称之为“ABCD病毒”,利用此勒索软件进行攻击的黑客团伙以针对企业及政府组织而出名,主要目标为中国,印度,印度尼西亚,乌克兰、英国,法国,德国等国家。2021年6月,LockBit勒索团伙将原有勒索软件升级为LockBit 2.0版本,并对外宣称这是全世界加密最快的勒索软件,可以在不到20分钟的时间内从受感染的系统下载100 GB 的数据。
样本信息
Lockbit最早发现且流行约2020年初,通过RDP弱口令爆破攻击,该勒索病毒不仅加密本地磁盘文件。还将枚举并加密同一网段下的所有共享磁盘。加密文件采用RSA结合AES的方式。至今在没有秘钥的情况下暂不能解密。本次样本为最新的Lockbit2.0,其勒索病毒团伙号称是迄今为止世界上最快的加密软件。
技术分析
issa.exe病毒文件通过Setup Factory打包为安装文件
运行后将在C盘%Appdata%目录下创建文件夹SBOP Crystal释放文件集。其中sharpsvn.exe为主程序,在释放后立即执行。
程序在运行后调用qclp-2_3.dll模块的导出函数GetBorderCounts
该模块导出函数执行后打开当前路径下Guide.pdf文件
Guide.pdf文件中插入多段ShellCode, 通过偏移一定值按序执行代码逻辑
读取的Guide.pdf文件数据通过一个偏移值访问任意一段ShellCode来执行功能
硬编码字符串通过异或来解密,所有的模块在shellcode运行时动态加载
豁免指定语言的计算机:
0x82C阿塞拜疆,西里尔(AZ)
0x42C阿塞拜疆、拉丁语(AZ)
0x42B亚美尼亚(AM)
0x423白俄罗斯(BY)
0x437格鲁吉亚(GE)
0x43F哈萨克斯坦(KZ)
0x440吉尔吉斯斯坦(KG)
0x819俄罗斯摩尔多瓦(RU)
0x419俄罗斯(RU)
0x428塔吉克斯坦、西里尔(TJ)
0x442土库曼斯坦(TM)
0x843乌兹别克斯坦,西里尔(UZ)
0x443乌兹别克斯坦,拉丁语(UZ)
0x422乌克兰(UA)
检查系统版本,通过AdjustPrivilege提升权限
结束含有指定名称的进程
wxServer,wxServerView,sqlmangr,RAgui,supervise,Culture,Defwatch,winword,QBW32,QBDBMgr,qbupdate,axlbridge,httpd,fdlauncher,MsDtSrvr,java,360se,360doctor,wdswfsafe,fdhost,GDscan,ZhuDongFangYu,QBDBMgrN,mysqld,AutodeskDesktopApp,acwebbrowser,CreativeCloud,AdobeDesktopService,CoreSync,AdobeCEF,Helper,node,AdobeIPCBroker,sync-taskbar,sync-worker,InputPersonalization,AdobeCollabSync,BrCtrlCntr,BrCcUxSys,SimplyConnectionManager,Simply.SystemTrayIcon,fbguard,fbserver,ONENOTEM,wsa_service,koaly-exp-engine-service,TeamViewer_Service,TeamViewer,tv_w32,tv_x64,TitanV,Ssms,notepad,RdrCEF,sam,oracle,ocssd,dbsnmp,synctime,agntsvc,isqlplussvc,xfssvccon,mydesktopservice,ocautoupds,encsvc,tbirdconfig,mydesktopqos,ocomm,dbeng50,sqbcoreservice,excel,infopath,msaccess,mspub,onenote,outlook,powerpnt,steam,thebat,thunderbird,visio,wordpad,bedbh,vxmon,benetns,bengien,pvlsvr,beserver,raw_agent_svc,vsnapvss,CagService,DellSystemDetect,EnterpriseClient,ProcessHacker,Procexp64,Procexp,GlassWire,GWCtlSrv,WireShark,dumpcap,j0gnjko1,Autoruns,Autoruns64,Autoruns64a,Autorunsc,Autorunsc64,Autorunsc64a,Sysmon,Sysmon64,procexp64a,procmon,procmon64,procmon64a,ADExplorer,ADExplorer64,ADExplorer64a,tcpview,tcpview64,tcpview64a,avz,tdsskiller,RaccineElevatedCfg,RaccineSettings,Raccine_x86,Raccine,Sqlservr,RTVscan,sqlbrowser,tomcat6,QBIDPService,notepad++,SystemExplorer,SystemExplorerService,SystemExplorerService64,Totalcmd,Totalcmd64,VeeamDeploymentSvc
在注册表Run下设置自启动项:
SOFTWARE\Microsoft\Windows\CurrentVersion\Run
设置值为:
C:\%Appdata%\Roaming\SBOP Crystal\sharpsvn.exe
查询CPU生产厂商标示,如果不与"AuthcAMDenti"、"GenuntelineI"相符合则病毒判断不在真机环境退出进程
在内存中解密勒索信字符串
勒索信文本内容如下
在注册表下创建项HKCU\Software\{UID}, Public存放RSA公钥。Private存放被加密的RSA私钥与AES秘钥
通过未导出系统函数NtSetInformationThread的ThreadAffinityMask重新实现 SetThreadAffinityMask绑定进程到CPU核心,可用于加快勒索加密的过程。
创建线程,指定服务
在内存中通过异或解密多组描述服务名称的字符串,依次停止那些指定的名称的服务。
"wrapper"
"DefWatch"
"ccEvtMgr"
"ccSetMgr"
"SavRoam"
"Sqlservr"
"sqlagent"
"sqladhlp"
"Culserver"
"RTVscan"
"sqlbrowser"
"SQLADHLP"
"QBIDPService"
"Intuit.QuickBooks.FCS"
"QBCFMonitorService"
"sqlwriter"
"msmdsrv"
"tomcat6"
"zhudongfangyu"
"vmware-usbarbitator64"
"vmware-converter"
"dbsrv12"
"dbeng8"
"MSSQL$MICROSOFT##WID"
"MSSQL$VEEAMSQL2012"
"SQLAgent$VEEAMSQL2012"
"SQLBrowser"
"SQLWriter"
"FishbowlMySQL"
"MSSQL$MICROSOFT##WID"
"MySQL57"
"MSSQL$KAV_CS_ADMIN_KIT"
"MSSQLServerADHelper100"
"SQLAgent$KAV_CS_ADMIN_KIT"
"msftesql-Exchange"
"MSSQL$MICROSOFT##SSEE"
"MSSQL$SBSMONITORING"
"MSSQL$SHAREPOINT"
"MSSQLFDLauncher$SBSMONITORING"
"MSSQLFDLauncher$SHAREPOINT"
"SQLAgent$SBSMONITORING"
"SQLAgent$SHAREPOINT"
"QBFCService"
"QBVSS"
文件加密时通过GetLogicalDrives和GetDriveTypeA获取磁盘的信息
遍历时排除以下指定的文件扩展名
".386"、".cmd"、".exe"、".ani"、".adv"、".theme"、".msi"、".msp"、".com"、".diagpkg"、".nls"、".diagcab"、".lock"、".ocx"、".mpa"、".cpl"、".mod"、".hta"、、".icns"、".prf"、".rtp"、".diagcfg"、".msstyles"、".bin"、".hlp"、".shs"、、".drv"、".wpx"、".bat"、".rom"、".msc"".spl"、".ps1"、".msu"、".ics"、".key"、".mp3"、".reg"、".dll"、".ini"、、".idx"、".hlp"、".ico"、".lnk"、".rdp"、"ntldr"、"ntuser.dat.log"、"bootsect.bak"、"autorun.inf"、"Restore-My-Files.txt"
遍历磁盘文件时排出指定关键字的目录
"$windows.~bt"
"Intel"
"Msocache"
"intel"
"msocache"
"$recycle.bin"
"$windows.~ws"
"tor browser"
"boot"
"system volume information"
"perflogs"
"google"
"application data"
"windows"
"windows.old"
"appdata"
"Windows nt"
"Msbuild"
"Microsoft"
"All users"
"mozilla"
排出以下文件后缀名
rar、zip、7z、ckp、dacpac、db、db-shm、db-wal、 db3、dbf、dbc、dbs、dbt、dbv、frm、mdf、mrg、mwb、 myd、ndf、qry、sdb、sdf、sql、sqlite、sqlite3、 qlitedb、tmd
修改文件名, 为文件名末尾添加后缀".lockbit"
通过GetAdaptersInfo获得本机网卡的子网地址段,枚举1-255内网IP, 对其中建立连接成功的网络地址通过NetShareEnum枚举它的网络共享资源,对其中的共享资源进行加密操作。
通过BCryptGenRandom为每个文件生成32位秘钥,使用AES-ECB加密文件数据。
预防措施
RDP相关预防:
- 限制可使用 RDP 的用户,仅将远程访问授权给那些必须用它来执行工作的人
- 设置访问锁定策略, 通过配置账户锁定策略, 调整账户锁定阀值与锁定持续时间等配置,可以有效抵御一定时间下高频的暴力破击
- 审视 RDP 的使用需求,如果业务不需要使用它,那么可以将所有 RDP 端口关闭,也可以仅在特定时间之间打开端口
- 重新分配 RDP 端口,可考虑将默认 RDP 端口更改为非标准的端口号, 可避免一部分恶意软件对特定 RDP 端口的直接攻击,仍需另外部署端口扫描攻击防范措施
- 定期检查、修补已知的 RDP 相关漏洞
- RDP 以及系统管理员的登陆,应使用高强度的复杂密码以降低弱口令爆破的机会。
系统安全性预防:
- 及时更新软件及系统补丁
- 定期备份重要数据
- 开启并保持杀毒软件及勒索防护软件功能的正常
- 定期修改管理员密码并使用复杂度较高的密码
- 开启显示文件扩展名防范病毒程序伪装应用程序图标。
局域网安全性预防:
- 非必要可关闭局域网共享文件或磁盘防止病毒横向传播
- 对局域网共享文件夹设置指定用户的访问权限防止不必要的权限遭到病毒滥用
- 通过防火墙规则限制如445、3389端口/关闭445、3389端口或是修改端口号防止病毒通过扫描端口等方式查询区域资产信息