-
-
[翻译][翻译]LOKIBOT - 第一款混合型 ANDROID 恶意软件
-
发表于: 2017-11-2 15:53 6884
-
我们最近发现了一款安卓银行恶意软件的新变体,这款软件正在大量传播,它有许多独一无二的特征,比如勒索软件模块。源代码中使用到了比特币地址,这款软件的作者似乎通过它在比特币上赚取了高达150万美元。
LokiBot的作者如果仅仅使用LokiBot想要赚取这么多的钱似乎不太可能,因为勒索软件的勒索费用介于70到100美元之间,而我们了解到的案例大概只有1000例。这一恶意软件会被作为一个工具包售出。一个包含更新的完全授权需要2000美元的比特币。这一软件的主要攻击途径是在大量银行APP(大约100种)以及其他流行的APP,比如Skype,Outlook和WhatsApp上显示一层透明的页面。勒索步骤发生在受害者禁用了恶意软件的管理员权限或是卸载它的时候。这一恶意软件除了会自动激活勒索模块外,还有一个 “Go_Crypt” 命令,能让开发者手动去触发它。然而,在写这篇文章的时候,这一勒索攻击似乎还不是它们的重点。
LokiBot可以运行在安卓4.0及更高的版本上,它有着非常标准的恶意软件应该具备的功能,比如说著名的覆盖银行APP的攻击。它还能盗取受害者的联系人,读取和发送短信。它有一条专门的命令,可以将所以联系人以短信的形式发送出去,以传播自己。受害者的浏览器历史记录同样也不安全,因它这些信息也能被上传到C2服务器。最糟糕的是,有一个选项可以把手机锁住,使用户不能访问它。
LokiBot也有一些特别的特征。其中之一是,它能够打开受害者的浏览器并打开一个网页。此外,它实现了SOCKS5,能够自动回复短信,也能打开用户的银行APP。LokiBot能够显示来自其他APP的通知,比如说显示一条消息显示基金已经被存储到受害者的账户上,或是显示一些有趣的网络钓鱼场景。网络钓鱼通知使用他们试图伪装的原始的APP图标。此外,在发出通知之前,手机会适当的振动一下,这样用户就能注意到它。当通知被点击后,它就会触发覆盖攻击。
另一个用趣的特征是它的勒索软件模块。这一勒索功能会在你将LokiBot从设备上删除时,能过调用管理员权限进行触发。它不会让你就这样将它卸载,而是会加密你外部存储卡上的所有文件,作为它盗取你钱财的最后手段,因为你需要为解密这些文件而付出比特币。
另一个需要注意的有趣的事是,这个软件会混淆它的网络通信,正如我们在先前发现的Bankbot变体中发现的那样。这也是我们的好朋友Nikolaos Chrysaidos(Mobile Threats和Security at Avast的组长)报导lokibot在还是Bankbot时的前期步骤。
C2服务器的web页面的控制面板的功能非常丰富,有许多有趣的特征。它提供了一个内置的APK生成器,允许你自定义图标,名称,日期和C2服务器的URL,使你能够针对不同的用户群体创建不同的APK。它也能自动生成证书对每个APK进行签名。
除了生成APK之外,还可以定制覆盖到受害者手机上的覆盖页面,对收集到的数据进行高级搜索,比如日志,历史记录和地理位置。
恶意软件的命令和控制面板
勒索步骤会在受害者卸载恶意软件的时候自动激活。此外,它也可以通过从C2服务器发送"Go_Crypt"命令进行激活。
当关闭设备管理员权限时自动激活
在勒索软件激活之后,它开始在主共享目录或外部存储目录(通常是SD卡)中搜索所有文件,并使用AES进行加密。密钥是随机产生的,使用默认的AES/ECB/PKCS5填充,和128位的密钥长度。然而,勒索软件的加密函数是非常失败的,因为尽管原始的文件被删除了,加密后的文件仍可以被解密。因此,受害者不会失去它们的文件,这些文件只是被重命名了。
尽管加密部分非常失败,屏幕锁定仍然是有效的,它会使用在用户第一次启动它时获得的管理员权限锁定受害者的屏幕。屏幕上会显示出威胁的话语:“你的手机因为观看儿童色情内容被锁定了。”支付金额从70美元到100美元不等。LokiBot的比特币地址被写死在APK中,并不能通过C2服务器进行更新。
当勒索软件锁定手机后显示的屏幕界面
写死的比特币地址
LokiBot使用的防止动态分析的技术并不是非常高明,但是比其它的恶意银行软件使用得更加广泛。我们可以发现,随着时间流逝,这一部分正逐渐加强,表明开发者仍在进行改善。下列技术可以在LokiBot最近的版本中找到。
从今年夏天的早些时候开始,我们已经看到了30至40个样例,bot的数量从100个变化到了2000个。从比特币交易和日常的bot更新来看,我们认为LokiBot的作者是非常成功的。事实上,几乎每周我们都能看到一些新特征出现在bot中,这表明LokiBot正渐渐成为一个强大的针对银行和流行APP的Android木马。
原文链接:https://clientsidedetection.com/lokibot___the_first_hybrid_android_malware.html
本文由 看雪翻译小组 梦野间 编译
- 检测模拟器文件:/dev/socket/qemud, /dev/qemu_pipe, /system/lib/libc_malloc_debug_qemu.so, /sys/qemu_trace, /system/bin/qemu-props;
- 检测模拟器属性:nit.svc.qemud, init.svc.qemu-props, qemu.hw.mainkeys;
- 在/proc/tty/drivers中检测模拟器(goldfish)驱动
- 检查TaintDroid的包org.appanalysis;
- 检查TaintDroid的类dalvik.system.Taint的存在
- BAWAG P.S.K. (at.bawag.mbanking)
- Easybank (at.easybank.mbanking)
- ErsteBank/Sparkasse netbanking (at.spardat.netbanking)
- Volksbank Banking (at.volksbank.volksbankmobile)
- Bankwest (au.com.bankwest.mobile)
- ING Australia Banking (au.com.ingdirect.android)
- NAB Mobile Banking (au.com.nab.mobile)
- Suncorp Bank (au.com.suncorp.SuncorpBank)
- ING Direct France (com.IngDirectAndroid)
- Raiffeisen Smart Mobile (com.advantage.RaiffeisenBank)
- Akbank Direkt (com.akbank.android.apps.akbank_direkt)
- 澳盛行動夥伴 (com.anz.android)
- ANZ goMoney Australia (com.anz.android.gomoney)
- AOL - News, Mail & Video (com.aol.mobile.aolapp)
- Axis Mobile (com.axis.mobile)
- Bank Austria MobileBanking (com.bankaustria.android.olb)
- Bankinter Móvil (com.bankinter.launcher)
- BBVA | España (com.bbva.bbvacontigo)
- BBVA net cash | ES & PT (com.bbva.netcash)
- Bendigo Bank (com.bendigobank.mobile)
- Boursorama Banque (com.boursorama.android.clients)
- Banque (com.caisseepargne.android.mobilebanking)
- Chase Mobile (com.chase.sig.android)
- CIBC Mobile Banking:registered: (com.cibc.android.mobi)
- CIC (com.cic_prod.bad)
- Citibank Australia (com.citibank.mobile.au)
- Fifth Third Mobile Banking (com.clairmail.fth)
- Crédit Mutuel (com.cm_prod.bad)
- Alior Mobile (com.comarch.mobile)
- CommBank (com.commbank.netbank)
- iMobile by ICICI Bank (com.csam.icici.bank.imobile)
- Meine Bank (com.db.mm.deutschebank)
- Gumtree: Search, Buy & Sell (com.ebay.gumtree.au)
- Facebook (com.facebook.katana)
- Messenger (com.facebook.orca)
- QNB Finansbank Cep Şubesi (com.finansbank.mobile.cepsube)
- La Banque Postale (com.fullsix.android.labanquepostale.accountaccess)
- Garanti Mobile Banking (com.garanti.cepsubesi)
- Getin Mobile (com.getingroup.mobilebanking)
- Google Play Games (com.google.android.play.games)
- Groupama toujours là (com.groupama.toujoursla)
- Lloyds Bank Mobile Banking (com.grppl.android.shell.CMBlloydsTSB73)
- Halifax: the banking app that gives you extra (com.grppl.android.shell.halifax)
- HSBC Mobile Banking (com.htsu.hsbcpersonalbanking)
- Bank of America Mobile Banking (com.infonow.bofa)
- ING-DiBa Banking + Brokerage (com.ing.diba.mbbr2)
- Raiffeisen ELBA (com.isis_papyrus.raiffeisen_pay_eyewdg)
- Capital One:registered: Mobile (com.konylabs.capitalone)
- Citi Handlowy (com.konylabs.cbplpat)
- Kutxabank (com.kutxabank.android)
- MACIF Assurance et Banque (com.macif.mobile.application.android)
- Microsoft Outlook (com.microsoft.office.outlook)
- Skrill (com.moneybookers.skrillpayments)
- NETELLER (com.moneybookers.skrillpayments.neteller)
- Crédit du Nord pour Mobile (com.ocito.cdn.activity.creditdunord)
- PayPal (com.paypal.android.p2pmobile)
- İşCep (com.pozitron.iscep)
- ruralvía (com.rsi)
- State Bank Freedom (com.sbi.SBFreedom)
- SBI Anywhere Personal (com.sbi.SBIFreedomPlus)
- Skype - gratis chatberichten en video-oproepen (com.skype.raider)
- HDFC Bank MobileBanking (com.snapwork.hdfc)
- Sparkasse+ (com.starfinanz.smob.android.sbanking)
- Sparkasse (com.starfinanz.smob.android.sfinanzstatus)
- SunTrust Mobile App (com.suntrust.mobilebanking)
- TD Canada (com.td)
- Banca Móvil Laboral Kutxa (com.tecnocom.cajalaboral)
- Halkbank Mobil (com.tmobtech.halkbank)
- Bancolombia App Personas (com.todo1.mobile)
- Union Bank Mobile Banking (com.unionbank.ecommerce.mobile.android)
- USAA Mobile (com.usaa.mobile.android.usaa)
- U.S. Bank (com.usbank.mobilebanking)
- VakıfBank Mobil Bankacılık (com.vakifbank.mobile)
- Viber Messenger (com.viber.voip)
- Wells Fargo Mobile (com.wf.wellsfargomobile)
- WhatsApp Messenger (com.whatsapp)
- Yahoo Mail Blijf georganiseerd (com.yahoo.mobile.client.android.mail)
- Yapı Kredi Mobile (com.ykb.android)
- Ziraat Mobil (com.ziraat.ziraatmobil)
- comdirect mobile App (de.comdirect.android)
- Commerzbank Banking App (de.commerzbanking.mobil)
- Consorsbank (de.consorsbank)
- DKB-Banking (de.dkb.portalapp)
- VR-Banking (de.fiducia.smartphone.android.banking.vr)
- Postbank Finanzassistent (de.postbank.finanzassistent)
- SpardaApp (de.sdvrz.ihb.mobile.app)
- Popular (es.bancopopular.nbmpopular)
- Santander (es.bancosantander.apps)
- Bankia (es.cm.android)
- EVO Banco móvil (es.evobanco.bancamovil)
- CaixaBank (es.lacaixa.mobile.android.newwapicon)
- Bank Pekao (eu.eleader.mobilebanking.pekao)
- PekaoBiznes24 (eu.eleader.mobilebanking.pekao.firm)
- Mobilny Bank (eu.eleader.mobilebanking.raiffeisen)
- HVB Mobile B@nking (eu.unicreditgroup.hvbapptan)
- Mon AXA (fr.axa.monaxa)
- Banque Populaire (fr.banquepopulaire.cyberplus)
- Ma Banque (fr.creditagricole.androidapp)
- Mes Comptes - LCL pour mobile (fr.lcl.android.customerarea)
- Mobile Banking (hr.asseco.android.jimba.mUCI.ro)
- Baroda mPassbook (in.co.bankofbaroda.mpassbook)
- Maybank (may.maybank.android)
- L'Appli Société Générale (mobi.societegenerale.mobile.lappli)
- Santander MobileBanking (mobile.santander.de)
- Mes Comptes BNP Paribas (net.bnpparibas.mescomptes)
- BankSA Mobile Banking (org.banksa.bank)
- Bank of Melbourne Mobile Banking (org.bom.bank)
- St.George Mobile Banking (org.stgeorge.bank)
- Westpac Mobile Banking (org.westpac.bank)
- BZWBK24 mobile (pl.bzwbk.bzwbk24)
- eurobank mobile (pl.eurobank)
- INGMobile (pl.ing.ingmobile)
- Token iPKO (pl.ipko.mobile)
- mBank PL (pl.mbank)
- IKO (pl.pkobp.iko)
- Banca Transilvania (ro.btrl.mobile)
- IDBI Bank GO (src.com.idbi)
- TSB Mobile Banking (uk.co.tsb.mobilebank)
- Bank Millennium (wit.android.bcpBankingApp.millenniumPL)
样例的哈希值
be02cf271d343ae1665588270f59a8df3700775f98edc42b3e3aecddf49f649d
1979d60ba17434d7b4b5403c7fd005d303831b1a584ea2bed89cfec0b45bd5c2
a10f40c71721668c5050a5bf86b41a1d834a594e6e5dd82c39e1d70f12aadf8b
5c1857830053e64082d065998ff741b607186dc3414aa7e8d747614faae3f650
cd44705b685dce0a6033760dec477921826cd05920884c3d8eb4762eaab900d1
bae9151dea172acceb9dfc27298eec77dc3084d510b09f5cda3370422d02e851
418bdfa331cba37b1185645c71ee2cf31eb01cfcc949569f1addbff79f73be66
a9899519a45f4c5dc5029d39317d0e583cd04eb7d7fa88723b46e14227809c26
6fb961a96c84a5f61d17666544a259902846facb8d3e25736d93a12ee5c3087c
c9f56caaa69c798c8d8d6a3beb0c23ec5c80cab2e99ef35f2a77c3b7007922df
39b7ff62ec97ceb01e9a50fa15ce0ace685847039ad5ee66bd9736efc7d4a932
78feb8240f4f77e6ce62441a6d213ee9778d191d8c2e78575c9e806a50f2ae45
a09d9d09090ea23cbfe202a159aba717c71bf2f0f1d6eed36da4de1d42f91c74
f4d0773c077787371dd3bebe93b8a630610a24d8affc0b14887ce69cc9ff24e4
18c19c76a2d5d3d49f954609bcad377a23583acb6e4b7f196be1d7fdc93792f8
cda01f288916686174951a6fbd5fbbc42fba8d6500050c5292bafe3a1bcb2e8d
7dbcecaf0e187a24b367fe05baedeb455a5b827eff6abfc626b44511d8c0029e比特币钱包地址
19tUaovjwW5FSUfmXuECFKn7aA5hXTvqUr
191JVE2XxLEwxZYp4j7atzsoDJ3xZEkgRC
1139UN4Xd6Y9748fRhCxQMTxdfD3Eq3qTf保护你的安卓用户
为安卓使用CSD来保护你的用户免于受到诸如LokiBot的移动威胁。它能够轻易地整合到Android APP上,通知你有页面覆盖了APP页面,或是其他的恶意软件威胁。想了解更多信息请发送一份白皮书或是demo给我们。
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
赞赏
- [原创]分享一个基本不可能被检测到的hook方案 44347
- [翻译]利用Qiling框架实现带有代码覆盖率信息的PE文件模拟执行 22914
- [翻译]android11中的系统加固 18068
- [翻译]使用hook绕过EDR内存保护 18310
- [翻译]SATURN反混淆框架 15721