“Wannacry”勒索软件初步分析

 

嗯,这次影响挺大,图转自群,来源不明。

这次攻击范围全球,只能说祝作者好死~

废话不多说,感谢Limi同志提供的样本。

二话不说扔虚拟机里面进行分析。

出乎意料的是,这玩意居然没加壳!!!对!没加壳!!!

运行起来后,先解压自己的资源,密钥是 WNcry@2ol7

然后开始加密你的个人数据

↑  很明显用的是AES(这部分数据可以解密),还有一部分是RSA,这里调试器跑飞了,就没做分析(抱歉,能力有限)

目前这部分我重新分析了,请阅读后续文章

加密完成后:

 

那个带黄色握手图标的玩意就是勒索的主程序,同样没加壳~

 

点击解密:

嗯,聪明人已经看出什么了~ 所谓能够解密一部分文件的真相

115p7UMMngoj1pMvkpHijcRdfJNXj6LrLn

12t9YDPgwueZ9NyMgw519p7AA8isjr6SMw

13AM4VW2dhxYgXeQepoHkHSQuy6NgaEb94

 

这三个是钱包的地址,嗯,说明了一个问题,就算你转钱了,黑客根本不可能知道是谁的电脑,这根本就是个骗局hhhhhhh。

当然为了避免被打脸,做一个猜测,黑客只是用了3组RSA密钥进行的加密~

顺便一说,我机器没联网~

下面是受害文件类型:

 

.data:00420CF8 dd offset a_doc ; “.doc”
.data:00420CFC dd offset a_docx ; “.docx”
.data:00420D00 dd offset a_docb ; “.docb”
.data:00420D04 dd offset a_docm ; “.docm”
.data:00420D08 dd offset a_dot ; “.dot”
.data:00420D0C dd offset a_dotm ; “.dotm”
.data:00420D10 dd offset a_dotx ; “.dotx”
.data:00420D14 dd offset a_xls ; “.xls”
.data:00420D18 dd offset a_xlsx ; “.xlsx”
.data:00420D1C dd offset a_xlsm ; “.xlsm”
.data:00420D20 dd offset a_xlsb ; “.xlsb”
.data:00420D24 dd offset a_xlw ; “.xlw”
.data:00420D28 dd offset a_xlt ; “.xlt”
.data:00420D2C dd offset a_xlm ; “.xlm”
.data:00420D30 dd offset a_xlc ; “.xlc”
.data:00420D34 dd offset a_xltx ; “.xltx”
.data:00420D38 dd offset a_xltm ; “.xltm”
.data:00420D3C dd offset a_ppt ; “.ppt”
.data:00420D40 dd offset a_pptx ; “.pptx”
.data:00420D44 dd offset a_pptm ; “.pptm”
.data:00420D48 dd offset a_pot ; “.pot”
.data:00420D4C dd offset a_pps ; “.pps”
.data:00420D50 dd offset a_ppsm ; “.ppsm”
.data:00420D54 dd offset a_ppsx ; “.ppsx”
.data:00420D58 dd offset a_ppam ; “.ppam”
.data:00420D5C dd offset a_potx ; “.potx”
.data:00420D60 dd offset a_potm ; “.potm”
.data:00420D64 dd offset a_pst ; “.pst”
.data:00420D68 dd offset a_ost ; “.ost”
.data:00420D6C dd offset a_msg ; “.msg”
.data:00420D70 dd offset a_eml ; “.eml”
.data:00420D74 dd offset a_edb ; “.edb”
.data:00420D78 dd offset a_vsd ; “.vsd”
.data:00420D7C dd offset a_vsdx ; “.vsdx”
.data:00420D80 dd offset a_txt ; “.txt”
.data:00420D84 dd offset a_csv ; “.csv”
.data:00420D88 dd offset a_rtf ; “.rtf”
.data:00420D8C dd offset a_123 ; “.123”
.data:00420D90 dd offset a_wks ; “.wks”
.data:00420D94 dd offset a_wk1 ; “.wk1”
.data:00420D98 dd offset a_pdf ; “.pdf”
.data:00420D9C dd offset a_dwg ; “.dwg”
.data:00420DA0 dd offset a_onetoc2 ; “.onetoc2”
.data:00420DA4 dd offset a_snt ; “.snt”
.data:00420DA8 dd offset a_hwp ; “.hwp”
.data:00420DAC dd offset a_602 ; “.602”
.data:00420DB0 dd offset a_sxi ; “.sxi”
.data:00420DB4 dd offset a_sti ; “.sti”
.data:00420DB8 dd offset a_sldx ; “.sldx”
.data:00420DBC dd offset a_sldm ; “.sldm”
.data:00420DC0 dd offset a_sldm ; “.sldm”
.data:00420DC4 dd offset a_vdi ; “.vdi”
.data:00420DC8 dd offset a_vmdk ; “.vmdk”
.data:00420DCC dd offset a_vmx ; “.vmx”
.data:00420DD0 dd offset a_gpg ; “.gpg”
.data:00420DD4 dd offset a_aes ; “.aes”
.data:00420DD8 dd offset off_41F894
.data:00420DDC dd offset a_paq ; “.PAQ”
.data:00420DE0 dd offset a_bz2 ; “.bz2”
.data:00420DE4 dd offset a_tbk ; “.tbk”
.data:00420DE8 dd offset a_bak ; “.bak”
.data:00420DEC dd offset a_tar ; “.tar”
.data:00420DF0 dd offset a_tgz ; “.tgz”
.data:00420DF4 dd offset a_gz ; “.gz”
.data:00420DF8 dd offset a_7z ; “.7z”
.data:00420DFC dd offset a_rar ; “.rar”
.data:00420E00 dd offset a_zip ; “.zip”
.data:00420E04 dd offset a_backup ; “.backup”
.data:00420E08 dd offset a_iso ; “.iso”
.data:00420E0C dd offset a_vcd ; “.vcd”
.data:00420E10 dd offset a_jpeg ; “.jpeg”
.data:00420E14 dd offset a_jpg ; “.jpg”
.data:00420E18 dd offset a_bmp ; “.bmp”
.data:00420E1C dd offset a_png ; “.png”
.data:00420E20 dd offset a_gif ; “.gif”
.data:00420E24 dd offset a_raw ; “.raw”
.data:00420E28 dd offset a_cgm ; “.cgm”
.data:00420E2C dd offset a_tif ; “.tif”
.data:00420E30 dd offset a_tiff ; “.tiff”
.data:00420E34 dd offset a_nef ; “.nef”
.data:00420E38 dd offset a_psd ; “.psd”
.data:00420E3C dd offset a_ai ; “.ai”
.data:00420E40 dd offset a_svg ; “.svg”
.data:00420E44 dd offset a_djvu ; “.djvu”
.data:00420E48 dd offset a_m4u ; “.m4u”
.data:00420E4C dd offset a_m3u ; “.m3u”
.data:00420E50 dd offset a_mid ; “.mid”
.data:00420E54 dd offset a_wma ; “.wma”
.data:00420E58 dd offset a_flv ; “.flv”
.data:00420E5C dd offset a_3g2 ; “.3g2”
.data:00420E60 dd offset a_mkv ; “.mkv”
.data:00420E64 dd offset a_3gp ; “.3gp”
.data:00420E68 dd offset a_mp4 ; “.mp4”
.data:00420E6C dd offset a_mov ; “.mov”
.data:00420E70 dd offset a_avi ; “.avi”
.data:00420E74 dd offset a_asf ; “.asf”
.data:00420E78 dd offset a_mpeg ; “.mpeg”
.data:00420E7C dd offset a_vob ; “.vob”
.data:00420E80 dd offset a_mpg ; “.mpg”
.data:00420E84 dd offset a_wmv ; “.wmv”
.data:00420E88 dd offset a_fla ; “.fla”
.data:00420E8C dd offset a_swf ; “.swf”
.data:00420E90 dd offset a_wav ; “.wav”
.data:00420E94 dd offset a_mp3 ; “.mp3”
.data:00420E98 dd offset a_sh ; “.sh”
.data:00420E9C dd offset a_class ; “.class”
.data:00420EA0 dd offset a_jar ; “.jar”
.data:00420EA4 dd offset a_java ; “.java”
.data:00420EA8 dd offset a_rb ; “.rb”
.data:00420EAC dd offset a_asp ; “.asp”
.data:00420EB0 dd offset a_php ; “.php”
.data:00420EB4 dd offset a_jsp ; “.jsp”
.data:00420EB8 dd offset a_brd ; “.brd”
.data:00420EBC dd offset a_sch ; “.sch”
.data:00420EC0 dd offset a_dch ; “.dch”
.data:00420EC4 dd offset a_dip ; “.dip”
.data:00420EC8 dd offset a_pl ; “.pl”
.data:00420ECC dd offset a_vb ; “.vb”
.data:00420ED0 dd offset a_vbs ; “.vbs”
.data:00420ED4 dd offset a_ps1 ; “.ps1”
.data:00420ED8 dd offset a_bat ; “.bat”
.data:00420EDC dd offset a_cmd ; “.cmd”
.data:00420EE0 dd offset a_js ; “.js”
.data:00420EE4 dd offset a_asm ; “.asm”
.data:00420EE8 dd offset a_h ; “.h”
.data:00420EEC dd offset a_pas ; “.pas”
.data:00420EF0 dd offset a_cpp ; “.cpp”
.data:00420EF4 dd offset a_c ; “.c”
.data:00420EF8 dd offset a_cs ; “.cs”
.data:00420EFC dd offset a_suo ; “.suo”
.data:00420F00 dd offset a_sln ; “.sln”
.data:00420F04 dd offset a_ldf ; “.ldf”
.data:00420F08 dd offset a_mdf ; “.mdf”
.data:00420F0C dd offset a_ibd ; “.ibd”
.data:00420F10 dd offset a_myi ; “.myi”
.data:00420F14 dd offset a_myd ; “.myd”
.data:00420F18 dd offset a_frm ; “.frm”
.data:00420F1C dd offset a_odb ; “.odb”
.data:00420F20 dd offset a_dbf ; “.dbf”
.data:00420F24 dd offset a_db ; “.db”
.data:00420F28 dd offset a_mdb ; “.mdb”
.data:00420F2C dd offset a_accdb ; “.accdb”
.data:00420F30 dd offset a_sql ; “.sql”
.data:00420F34 dd offset a_sqlitedb ; “.sqlitedb”
.data:00420F38 dd offset a_sqlite3 ; “.sqlite3”
.data:00420F3C dd offset a_asc ; “.asc”
.data:00420F40 dd offset a_lay6 ; “.lay6”
.data:00420F44 dd offset a_lay ; “.lay”
.data:00420F48 dd offset a_mml ; “.mml”
.data:00420F4C dd offset a_sxm ; “.sxm”
.data:00420F50 dd offset a_otg ; “.otg”
.data:00420F54 dd offset a_odg ; “.odg”
.data:00420F58 dd offset a_uop ; “.uop”
.data:00420F5C dd offset a_std ; “.std”
.data:00420F60 dd offset a_sxd ; “.sxd”
.data:00420F64 dd offset a_otp ; “.otp”
.data:00420F68 dd offset a_odp ; “.odp”
.data:00420F6C dd offset a_wb2 ; “.wb2”
.data:00420F70 dd offset a_slk ; “.slk”
.data:00420F74 dd offset a_dif ; “.dif”
.data:00420F78 dd offset a_stc ; “.stc”
.data:00420F7C dd offset a_sxc ; “.sxc”
.data:00420F80 dd offset a_ots ; “.ots”
.data:00420F84 dd offset a_ods ; “.ods”
.data:00420F88 dd offset a_3dm ; “.3dm”
.data:00420F8C dd offset a_max ; “.max”
.data:00420F90 dd offset a_3ds ; “.3ds”
.data:00420F94 dd offset a_uot ; “.uot”
.data:00420F98 dd offset a_stw ; “.stw”
.data:00420F9C dd offset a_sxw ; “.sxw”
.data:00420FA0 dd offset a_ott ; “.ott”
.data:00420FA4 dd offset a_odt ; “.odt”
.data:00420FA8 dd offset a_pem ; “.pem”
.data:00420FAC dd offset a_p12 ; “.p12”
.data:00420FB0 dd offset a_csr ; “.csr”
.data:00420FB4 dd offset a_crt ; “.crt”
.data:00420FB8 dd offset a_key ; “.key”
.data:00420FBC dd offset a_pfx ; “.pfx”
.data:00420FC0 dd offset a_der ; “.der”

 

没修洞的赶紧修吧~这次的漏洞被小人利用确实有点恶心。

如果已经中招的朋友,请不要急着支付!对方很大可能根本不会给你解密。

附加:

关于破解该程序可以解密的传言,亲测结果如下:

点击确定后什么也没发生,另外界面里面的给作者发消息有可能是真的,要通过洋葱浏览器。

另外关于作者怂了的传言也是假的,请大家不要转发了。

这两个作者根本不是同一个!!!

 

如有错误或者进一步分析,请大神们指正,谢谢

““Wannacry”勒索软件初步分析”的一个回复

发表评论

邮箱地址不会被公开。 必填项已用*标注