From 5a1207e2f6c04715f1f9acbf327edbc1b640fbb0 Mon Sep 17 00:00:00 2001 From: ditekshen Date: Fri, 10 Jan 2020 06:23:57 +0000 Subject: [PATCH 01/67] Add Yara malware signatures --- data/yara/CAPE/AgentTeslav2.yar | 25 +++++++++++++++++++++++++ data/yara/CAPE/AveMaria.yar | 28 ++++++++++++++++++++++++++++ data/yara/CAPE/ISRStealer.yar | 17 +++++++++++++++++ data/yara/CAPE/Laturo.yar | 24 ++++++++++++++++++++++++ data/yara/CAPE/LimeRAT.yar | 18 ++++++++++++++++++ data/yara/CAPE/QuasarRAT.yar | 22 ++++++++++++++++++++++ data/yara/CAPE/XpertRAT.yar | 28 ++++++++++++++++++++++++++++ 7 files changed, 162 insertions(+) create mode 100644 data/yara/CAPE/AgentTeslav2.yar create mode 100644 data/yara/CAPE/AveMaria.yar create mode 100644 data/yara/CAPE/ISRStealer.yar create mode 100644 data/yara/CAPE/Laturo.yar create mode 100644 data/yara/CAPE/LimeRAT.yar create mode 100644 data/yara/CAPE/QuasarRAT.yar create mode 100644 data/yara/CAPE/XpertRAT.yar diff --git a/data/yara/CAPE/AgentTeslav2.yar b/data/yara/CAPE/AgentTeslav2.yar new file mode 100644 index 00000000000..b1e0cb5771f --- /dev/null +++ b/data/yara/CAPE/AgentTeslav2.yar @@ -0,0 +1,25 @@ +rule AgentTeslav2 { + meta: + author = "ditekshen" + description = "AgenetTesla Type 2 Keylogger payload" + cape_type = "AgentTesla Type 2 Payload" + strings: + $s1 = "get_kbHook" ascii + $s2 = "GetPrivateProfileString" ascii + $s3 = "get_OSFullName" ascii + $s4 = "get_PasswordHash" ascii + $s5 = "#\"(')'*)+','-'/.0.1.2.3.54647498:9;9=<>=?=" wide + $s6 = "\"!#!$!%!&!-," wide + $s7 = "logins" fullword wide + $s8 = "keylog" fullword wide + $s9 = "1.85 (Hash, version 2, native byte-order)" wide + + $cl1 = "Postbox" fullword ascii + $cl2 = "BlackHawk" fullword ascii + $cl3 = "WaterFox" fullword ascii + $cl4 = "CyberFox" fullword ascii + $cl5 = "IceDragon" fullword ascii + $cl6 = "Thunderbird" fullword ascii + condition: + (uint16(0) == 0x5a4d and 6 of ($s*)) or (6 of ($s*) and 2 of ($cl*)) +} diff --git a/data/yara/CAPE/AveMaria.yar b/data/yara/CAPE/AveMaria.yar new file mode 100644 index 00000000000..dfea35e4e50 --- /dev/null +++ b/data/yara/CAPE/AveMaria.yar @@ -0,0 +1,28 @@ +rule AveMaria { + meta: + author = "ditekshen" + description = "AveMaria variant payload" + cape_type = "AveMaria Payload" + strings: + $s1_1 = "PK11_CheckUserPassword" fullword ascii + $s1_2 = "PK11_Authenticate" fullword ascii + $s1_3 = "PK11SDR_Decrypt" fullword ascii + $s1_4 = "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon\\SpecialAccounts\\UserList" fullword ascii + $s1_5 = "AVE_MARIA" ascii wide + $s1_6 = "127.0.0." ascii + + $s2_1 = "RDPClip" fullword wide + $s2_2 = "Grabber" fullword wide + $s2_3 = "Ave_Maria Stealer OpenSource" wide + $s2_4 = "\\MidgetPorn\\workspace\\MsgBox.exe" wide + $s2_5 = "@\\cmd.exe" wide + $s2_6 = "/n:%temp%\\ellocnak.xml" wide + $s2_7 = "Hey I'm Admin" wide + + $d1 = "softokn3.dll" fullword wide + $d2 = "nss3.dll" fullword wide + $d3 = "logins.json" wide + $d4 = "Asend.db" fullword wide + condition: + (uint16(0) == 0x5a4d and (4 of ($s2*) and 2 of ($d*)) or (all of ($s1*))) or ((4 of ($s1*) and 2 of ($d*)) or (all of ($s1*))) +} diff --git a/data/yara/CAPE/ISRStealer.yar b/data/yara/CAPE/ISRStealer.yar new file mode 100644 index 00000000000..035cda3463b --- /dev/null +++ b/data/yara/CAPE/ISRStealer.yar @@ -0,0 +1,17 @@ +rule ISRStealer { + meta: + author = "ditekshen" + description = "ISRStealer payload" + cape_type = "ISRStealer Payload" + strings: + $s1 = "&password=" wide + $s2 = "&pcname=" wide + $s3 = "MSVBVM60.DLL" ascii + $s4 = "MSVBVM60.DLL" wide + $s5 = "Core Software For : Public" wide + $s6 = "" wide + $s7 = "" wide + $s8 = "/scomma" wide + condition: + (uint16(0) == 0x5a4d and filesize < 4000KB and 6 of them) or all of them +} diff --git a/data/yara/CAPE/Laturo.yar b/data/yara/CAPE/Laturo.yar new file mode 100644 index 00000000000..01a40b1ff0e --- /dev/null +++ b/data/yara/CAPE/Laturo.yar @@ -0,0 +1,24 @@ +rule Laturo { + meta: + author = "ditekshen" + description = "Laturo information stealer payload" + cape_type = "Laturo Payload" + strings: + $str1 = "cmd.exe /c ping 127.0.0.1" ascii wide + $str2 = "cmd.exe /c start" ascii wide + $str3 = "\\RapidLoader\\" ascii + $str4 = "loader/gate.php" ascii wide + $str5 = "Hwid:" ascii wide + $str6 = "Special:" ascii wide + $str7 = "logs=%s" ascii + $data1 = "cookies.%u.txt" nocase ascii wide + $data2 = "passwords.%u.txt" nocase ascii wide + $data3 = "credentials.%u.txt" nocase ascii wide + $data4 = "cards.%u.txt" nocase ascii wide + $data5 = "autofill.%u.txt" nocase ascii wide + $data6 = "loginusers.vdf" ascii wide + $data7 = "screenshot.bmp" nocase ascii wide + $data8 = "webcam.bmp" nocase ascii wide + condition: + uint16(0) == 0x5a4d and 5 of ($str*) and 1 of ($data*) +} diff --git a/data/yara/CAPE/LimeRAT.yar b/data/yara/CAPE/LimeRAT.yar new file mode 100644 index 00000000000..cb6f3989cf8 --- /dev/null +++ b/data/yara/CAPE/LimeRAT.yar @@ -0,0 +1,18 @@ +rule LimeRAT { + meta: + author = "ditekshen" + description = "LimeRAT payload" + cape_type = "LimeRAT Payload" + strings: + $s1 = "schtasks /create /f /sc ONLOGON /RL HIGHEST /tn LimeRAT-Admin /tr" wide + $s2 = "\\vboxhook.dll" fullword wide + $s3 = "Win32_Processor.deviceid=\"CPU0\"" fullword wide + $s4 = "select CommandLine from Win32_Process where Name='{0}'" wide + $s5 = "Minning..." fullword wide + $s6 = "Regasm.exe" fullword wide + $s7 = "Flood!" fullword wide + $s8 = "Rans-Status" fullword wide + $s9 = "cmd.exe /c ping 0" wide + condition: + uint16(0) == 0x5a4d and 5 of them +} diff --git a/data/yara/CAPE/QuasarRAT.yar b/data/yara/CAPE/QuasarRAT.yar new file mode 100644 index 00000000000..ddcdf40cbb2 --- /dev/null +++ b/data/yara/CAPE/QuasarRAT.yar @@ -0,0 +1,22 @@ +rule QuasarRAT { + meta: + author = "ditekshen" + description = "QuasarRAT payload" + cape_type = "QuasarRAT Payload" + strings: + $s1 = "GetKeyloggerLogsResponse" fullword ascii + $s2 = "GetKeyloggerLogs" fullword ascii + $s3 = "/>Log created on" wide + $s4 = "User: {0}{3}Pass: {1}{3}Host: {2}" wide + $s5 = "Domain: {1}{0}Cookie Name: {2}{0}Value: {3}{0}Path: {4}{0}Expired: {5}{0}HttpOnly: {6}{0}Secure: {7}" wide + $s6 = "grabber_" wide + $s7 = "" ascii + $s8 = "k__BackingField" fullword ascii + $s9 = "" ascii + $s10 = "add_OnHotKeysDown" ascii + $mutex = "QSR_MUTEX_" ascii wide + $ua1 = "Mozilla/5.0 (Windows NT 6.3; rv:48.0) Gecko/20100101 Firefox/48.0" fullword wide + $us2 = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A" fullword wide + condition: + uint16(0) == 0x5a4d and ($mutex or (all of ($ua*) and 2 of them) or 6 of ($s*)) +} diff --git a/data/yara/CAPE/XpertRAT.yar b/data/yara/CAPE/XpertRAT.yar new file mode 100644 index 00000000000..14de402a36b --- /dev/null +++ b/data/yara/CAPE/XpertRAT.yar @@ -0,0 +1,28 @@ +rule XpertRAT { + meta: + author = "ditekshen" + description = "XpertRAT payload" + cape_type = "XpertRAT Payload" + strings: + $v1 = "[XpertRAT-Mutex]" fullword wide + $v2 = "XPERTPLUGIN" fullword wide + $v3 = "+Xpert+3." wide + $v4 = "keylog.tmp" fullword wide + $v5 = "\\TempReg.reg" fullword wide + + $s1 = "ClsKeylogger" fullword ascii nocase + $s2 = "clsCamShot" fullword ascii nocase + $s3 = "ClsShellCommand" fullword ascii nocase + $s4 = "ClsRemoteDesktop" fullword ascii nocase + $s5 = "ClsScreenRemote" fullword ascii nocase + $s6 = "ClsSoundRemote" fullword ascii nocase + $s7 = "MdlHidder" fullword ascii + $s8 = "modKeylog" fullword ascii + $s9 = "modWipe" fullword ascii + $s10 = "modDelProcInUse" fullword ascii + $s11= "Socket_DataArrival" fullword ascii + $s12 = "cZip_EndCompress" fullword ascii + + condition: + uint16(0) == 0x5a4d and (3 of ($v*) or 6 of ($s*)) +} From f789fe5b423051ad4f3dcf5d25692ed11ecefe70 Mon Sep 17 00:00:00 2001 From: ditekshen Date: Fri, 10 Jan 2020 07:41:34 +0000 Subject: [PATCH 02/67] Add new signatures --- .../signatures/disables_notificationcenter.py | 38 +++++++++ modules/signatures/disables_smartscreen.py | 51 ++++++++++++ modules/signatures/disables_winfirewall.py | 40 +++++++++ .../signatures/downloader_phorpiex_mutex.py | 38 +++++++++ .../infostealer_predatorthethief.py | 69 ++++++++++++++++ modules/signatures/ransomware_revil_mutex.py | 54 +++++++++++++ modules/signatures/rat_karagany.py | 78 ++++++++++++++++++ modules/signatures/rat_quasar.py | 81 ++++++++++--------- modules/signatures/rat_xpert.py | 62 ++++++++++++++ 9 files changed, 472 insertions(+), 39 deletions(-) create mode 100644 modules/signatures/disables_notificationcenter.py create mode 100644 modules/signatures/disables_smartscreen.py create mode 100644 modules/signatures/disables_winfirewall.py create mode 100644 modules/signatures/downloader_phorpiex_mutex.py create mode 100644 modules/signatures/infostealer_predatorthethief.py create mode 100644 modules/signatures/ransomware_revil_mutex.py create mode 100644 modules/signatures/rat_karagany.py create mode 100644 modules/signatures/rat_xpert.py diff --git a/modules/signatures/disables_notificationcenter.py b/modules/signatures/disables_notificationcenter.py new file mode 100644 index 00000000000..d8dd6ce1010 --- /dev/null +++ b/modules/signatures/disables_notificationcenter.py @@ -0,0 +1,38 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class DisablesNotificationCenter(Signature): + name = "disables_notificationcenter" + description = "Disables Windows Notification Center" + severity = 3 + categories = ["generic"] + authors = ["ditekshen"] + minimum = "0.5" + ttp = ["T1089"] + + def run(self): + indicators = [ + ".*\\\\Explorer\\\\DisableNotificationCenter$", + ] + + for indicator in indicators: + match = self.check_write_key(pattern=indicator, regex=True) + if match: + self.data.append({"regkey": match}) + return True + + return False \ No newline at end of file diff --git a/modules/signatures/disables_smartscreen.py b/modules/signatures/disables_smartscreen.py new file mode 100644 index 00000000000..a1399627888 --- /dev/null +++ b/modules/signatures/disables_smartscreen.py @@ -0,0 +1,51 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class DisablesSmartScreen(Signature): + name = "disables_smartscreen" + description = "Modifies or disables Windows SmartScreen" + severity = 3 + categories = ["generic"] + authors = ["ditekshen"] + minimum = "0.5" + ttp = ["T1089"] + + def run(self): + re_match = False + cmd_match = False + indicators = [ + ".*\\\\Windows\\\\CurrentVersion\\\\explorer\\\\SmartScreenEnabled$", + ".*\\\\Windows\\\\CurrentVersion\\\\AppHost\\\\SmartScreenEnabled$", + ".*\\\\MicrosoftEdge\\\\PhishingFilter$", + ] + + for indicator in indicators: + match = self.check_write_key(pattern=indicator, regex=True) + if match: + self.data.append({"regkey": match}) + re_match = True + + cmdpat = ".*\"SmartScreenEnabled\".*\"Off\".*" + match = self.check_executed_command(pattern=cmdpat, regex=True) + if match: + self.data.append({"command": match}) + cmd_match = True + + if re_match or cmd_match: + return True + + return False \ No newline at end of file diff --git a/modules/signatures/disables_winfirewall.py b/modules/signatures/disables_winfirewall.py new file mode 100644 index 00000000000..fdc42408887 --- /dev/null +++ b/modules/signatures/disables_winfirewall.py @@ -0,0 +1,40 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class DisablesWindowsFirewall(Signature): + name = "disables_winfirewall" + description = "Disables Windows firewall" + severity = 3 + categories = ["generic"] + authors = ["ditekshen"] + minimum = "0.5" + ttp = ["T1089"] + + def run(self): + indicators = [ + "netsh\s+firewall\s+set.*disable", + "netsh\s+advfirewall\s+set.*off", + ] + + for indicator in indicators: + match = self.check_executed_command(pattern=indicator, regex=True, all=True) + if match: + for fwcmd in match: + self.data.append({"command": fwcmd}) + return True + + return False \ No newline at end of file diff --git a/modules/signatures/downloader_phorpiex_mutex.py b/modules/signatures/downloader_phorpiex_mutex.py new file mode 100644 index 00000000000..0e7bc8f8a2d --- /dev/null +++ b/modules/signatures/downloader_phorpiex_mutex.py @@ -0,0 +1,38 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class PhorpiexMutexes(Signature): + name = "phorpiex_mutexes" + description = "Creates known Phorpiex mutexes" + severity = 3 + categories = ["downloader", "dropper"] + families = ["Phorpiex"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + ".:-Tldr-:.", + ] + + for indicator in indicators: + match_mutex = self.check_mutex(pattern=indicator, regex=True) + if match_mutex: + self.data.append({"mutex": match_mutex}) + return True + + return False \ No newline at end of file diff --git a/modules/signatures/infostealer_predatorthethief.py b/modules/signatures/infostealer_predatorthethief.py new file mode 100644 index 00000000000..10cf763076a --- /dev/null +++ b/modules/signatures/infostealer_predatorthethief.py @@ -0,0 +1,69 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# References: +# https://any.run/malware-trends/predator +# https://securelist.com/a-predatory-tale/89779/ +# https://fumik0.com/2018/10/15/predator-the-thief-in-depth-analysis-v2-3-5/ + +from lib.cuckoo.common.abstracts import Signature + +class PredatorTheThiefMutexes(Signature): + name = "predatorthethief_mutexes" + description = "Creates Predator The Thief information stealer mutexes" + severity = 3 + categories = ["infostealer"] + families = ["PredatorTheThief"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + "SyystemServs", + ] + + for indicator in indicators: + match = self.check_mutex(pattern=indicator, regex=True) + if match: + self.data.append({"mutex": match}) + return True + + return False + +class PredatorTheThiefFiles(Signature): + name = "predatorthethief_files" + description = "Creates Predator The Thief information stealer files" + severity = 3 + categories = ["infostealer"] + families = ["PredatorTheThief"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + ".*\\\\vlmi\{lulz\}yg\.col$", + ".*\\\\forms\.(log|txt)$", + ".*\\\\cards\.(log|txt)$", + ".*\\\\password\.(log|txt)$", + ".*\\\\Information\.(log|txt)$", + ] + + for indicator in indicators: + match = self.check_file(pattern=indicator, regex=True) + if match: + self.data.append({"file": match}) + return True + + return False diff --git a/modules/signatures/ransomware_revil_mutex.py b/modules/signatures/ransomware_revil_mutex.py new file mode 100644 index 00000000000..66c42ae1517 --- /dev/null +++ b/modules/signatures/ransomware_revil_mutex.py @@ -0,0 +1,54 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class RevilMutexes(Signature): + name = "revil_mutexes" + description = "Creates known REvil/Sodinokibi ransomware mutexes" + severity = 3 + categories = ["ransomware"] + families = ["REvil", "Sodinokibi"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + "112983B0-B4C9-4F9B-96C4-E5394FB8A5B4", + "1DB960B8-E5C3-F077-5D68-EEE2E637EE0B", + "206D87E0-0E60-DF25-DD8F-8E4E7D1E3BF0", + "3555A3D6-37B3-0919-F7BE-F3AAB5B6644A", + "552FFA80-3393-423d-8671-7BA046BB5906", + "6CAC559B-02B4-D929-3675-2706BBB8CF66", + "859B4E91-BAF1-3DBB-E616-E9E99E851136", + "879EBE58-4C9F-A6BE-96A3-4C51826CEC2F", + "95B97D2B-4513-2041-E8A5-AC7446F12075", + "BF29B630-7648-AADF-EC8A-94647D2349D6", + "C126B3B3-6B51-F91C-6FDF-DD2C70FA45E6", + "C19C0A84-FA11-3F9C-C3BC-0BCB16922ABF", + "C817795D-7756-05BF-A69E-6ED0CE91EAC4", + "D382D713-AA87-457D-DDD3-C3DDD8DFBC96", + "DAE678E1-967E-6A19-D564-F7FCA6E7AEBC", + "FB864EC7-B361-EA6D-545C-E1A167CCBE95", + "FDC9FA6E-8257-3E98-2600-E72145612F09", + ] + + for indicator in indicators: + match_mutex = self.check_mutex(pattern=indicator, regex=True) + if match_mutex: + self.data.append({"mutex": match_mutex}) + return True + + return False \ No newline at end of file diff --git a/modules/signatures/rat_karagany.py b/modules/signatures/rat_karagany.py new file mode 100644 index 00000000000..9108946ba81 --- /dev/null +++ b/modules/signatures/rat_karagany.py @@ -0,0 +1,78 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +try: + import re2 as re +except ImportError: + import re + +from lib.cuckoo.common.abstracts import Signature + +class KaraganyEventObjects(Signature): + name = "karagany_system_event_objects" + description = "Creates system event objects associated with Karagany/xFrost RAT" + severity = 3 + categories = ["RAT"] + families = ["Karagany", "xFrost"] + authors = ["ditekshen"] + minimum = "0.5" + + def __init__(self, *args, **kwargs): + Signature.__init__(self, *args, **kwargs) + self.match = False + self.event_objects = [ + "__klg__", + "__pickill__", + "__klgkillsoft__", + ] + + filter_apinames = set(["NtCreateEvent", "NtCreateEventEx"]) + + def on_call(self, call, process): + event = self.get_argument(call, "EventName") + if event: + for obj in self.event_objects: + if obj in event: + self.match = True + self.data.append({"system_event_object": event}) + + def on_complete(self): + return self.match + +class KaraganyFiles(Signature): + name = "karagany_files" + description = "Creates files/directories associated with Karagany/xFrost RAT" + severity = 3 + categories = ["RAT"] + families = ["Karagany", "xFrost"] + authors = ["ditekshen"] + minimum = "0.5" + + def on_complete(self): + indicators = [ + ".*\\\\up_stat.txt$", + ".*\\\\stat_ag.txt$", + ".*\\\\serv_stat.txt$", + ".*\\\\svchost\d+\.txt$", + ".*\\\\Update\\\\Tmp\\\\.*", + ] + + for indicator in indicators: + match = self.check_write_file(patten=indicator, regex=True, all=True) + if match: + self.data.append({"path": match}) + return True + + return False \ No newline at end of file diff --git a/modules/signatures/rat_quasar.py b/modules/signatures/rat_quasar.py index 1bfa2ba5100..8254192c0d7 100644 --- a/modules/signatures/rat_quasar.py +++ b/modules/signatures/rat_quasar.py @@ -1,39 +1,42 @@ -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -from lib.cuckoo.common.abstracts import Signature - -class QuasarMutexes(Signature): - name = "rat_quasar_mutexes" - description = "Creates known Quasar mutexes" - severity = 3 - categories = ["rat"] - families = ["Quasar"] - authors = ["wmetcalf"] - references = ["6a243d91a8253c474a88a7818c487b5caab65eb7764e2861ee131678a991737a"] - minimum = "0.5" - - def run(self): - indicators = [ - "^QSR_MUTEX", - ] - - for indicator in indicators: - if self.check_mutex(pattern=indicator,regex=True): - return True - - return False - - - +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class QuasarRATMutexes(Signature): + name = "quasarrat_mutexes" + description = "Creates QuasarRAT RAT mutexes" + severity = 3 + categories = ["RAT"] + families = ["QuasarRAT"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + "^QSR_MUTEX_[A-Z0-9a-z]{18}$", + "VMFvdCsC7RFqerZinfV0sxJFo", + "9s1IUBvnvFDb76ggOFFmnhIK", + "ERveMB6XRx2pmYdoKjMnoN1f", + "ABCDEFGHIGKLMNOPQRSTUVWXYZ", + ] + + for indicator in indicators: + match = self.check_mutex(pattern=indicator, regex=True) + if match: + self.data.append({"mutex": match}) + return True + + return False \ No newline at end of file diff --git a/modules/signatures/rat_xpert.py b/modules/signatures/rat_xpert.py new file mode 100644 index 00000000000..eb5143d62d0 --- /dev/null +++ b/modules/signatures/rat_xpert.py @@ -0,0 +1,62 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class XpertRATMutexes(Signature): + name = "xpertrat_mutexes" + description = "Creates Xpert RAT mutexes" + severity = 3 + categories = ["RAT"] + families = ["Xpert"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + "G2L6E3O1-E775-G5J4-R4C2-P5F660S1R4A8", + ] + + for indicator in indicators: + match_mutex = self.check_mutex(pattern=indicator, regex=True) + if match_mutex: + self.data.append({"mutex": match_mutex}) + return True + + return False + +class XpertRATFiles(Signature): + name = "xpertrat_files" + description = "Creates Xpert RAT files" + severity = 3 + categories = ["RAT"] + families = ["Xpert"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + ".*\\\\ut$", + ".*\\\\Temp\\\\.*\.bmp" + ".*\\\\G2L6E3O1-E775-G5J4-R4C2-P5F660S1R4A8$" + ] + + for indicator in indicators: + match = self.check_write_file(pattern=indicator, regex=True) + if match: + self.data.append({"file": match}) + return True + + return False \ No newline at end of file From 014e4c8dace6c3dd59d87c99a8458e0d1a96d51f Mon Sep 17 00:00:00 2001 From: ditekshen Date: Fri, 10 Jan 2020 07:52:52 +0000 Subject: [PATCH 03/67] Revert "Add new signatures" This reverts commit f789fe5b423051ad4f3dcf5d25692ed11ecefe70. --- .../signatures/disables_notificationcenter.py | 38 --------- modules/signatures/disables_smartscreen.py | 51 ------------ modules/signatures/disables_winfirewall.py | 40 --------- .../signatures/downloader_phorpiex_mutex.py | 38 --------- .../infostealer_predatorthethief.py | 69 ---------------- modules/signatures/ransomware_revil_mutex.py | 54 ------------- modules/signatures/rat_karagany.py | 78 ------------------ modules/signatures/rat_quasar.py | 81 +++++++++---------- modules/signatures/rat_xpert.py | 62 -------------- 9 files changed, 39 insertions(+), 472 deletions(-) delete mode 100644 modules/signatures/disables_notificationcenter.py delete mode 100644 modules/signatures/disables_smartscreen.py delete mode 100644 modules/signatures/disables_winfirewall.py delete mode 100644 modules/signatures/downloader_phorpiex_mutex.py delete mode 100644 modules/signatures/infostealer_predatorthethief.py delete mode 100644 modules/signatures/ransomware_revil_mutex.py delete mode 100644 modules/signatures/rat_karagany.py delete mode 100644 modules/signatures/rat_xpert.py diff --git a/modules/signatures/disables_notificationcenter.py b/modules/signatures/disables_notificationcenter.py deleted file mode 100644 index d8dd6ce1010..00000000000 --- a/modules/signatures/disables_notificationcenter.py +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright (C) 2019 ditekshen -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -from lib.cuckoo.common.abstracts import Signature - -class DisablesNotificationCenter(Signature): - name = "disables_notificationcenter" - description = "Disables Windows Notification Center" - severity = 3 - categories = ["generic"] - authors = ["ditekshen"] - minimum = "0.5" - ttp = ["T1089"] - - def run(self): - indicators = [ - ".*\\\\Explorer\\\\DisableNotificationCenter$", - ] - - for indicator in indicators: - match = self.check_write_key(pattern=indicator, regex=True) - if match: - self.data.append({"regkey": match}) - return True - - return False \ No newline at end of file diff --git a/modules/signatures/disables_smartscreen.py b/modules/signatures/disables_smartscreen.py deleted file mode 100644 index a1399627888..00000000000 --- a/modules/signatures/disables_smartscreen.py +++ /dev/null @@ -1,51 +0,0 @@ -# Copyright (C) 2019 ditekshen -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -from lib.cuckoo.common.abstracts import Signature - -class DisablesSmartScreen(Signature): - name = "disables_smartscreen" - description = "Modifies or disables Windows SmartScreen" - severity = 3 - categories = ["generic"] - authors = ["ditekshen"] - minimum = "0.5" - ttp = ["T1089"] - - def run(self): - re_match = False - cmd_match = False - indicators = [ - ".*\\\\Windows\\\\CurrentVersion\\\\explorer\\\\SmartScreenEnabled$", - ".*\\\\Windows\\\\CurrentVersion\\\\AppHost\\\\SmartScreenEnabled$", - ".*\\\\MicrosoftEdge\\\\PhishingFilter$", - ] - - for indicator in indicators: - match = self.check_write_key(pattern=indicator, regex=True) - if match: - self.data.append({"regkey": match}) - re_match = True - - cmdpat = ".*\"SmartScreenEnabled\".*\"Off\".*" - match = self.check_executed_command(pattern=cmdpat, regex=True) - if match: - self.data.append({"command": match}) - cmd_match = True - - if re_match or cmd_match: - return True - - return False \ No newline at end of file diff --git a/modules/signatures/disables_winfirewall.py b/modules/signatures/disables_winfirewall.py deleted file mode 100644 index fdc42408887..00000000000 --- a/modules/signatures/disables_winfirewall.py +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright (C) 2019 ditekshen -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -from lib.cuckoo.common.abstracts import Signature - -class DisablesWindowsFirewall(Signature): - name = "disables_winfirewall" - description = "Disables Windows firewall" - severity = 3 - categories = ["generic"] - authors = ["ditekshen"] - minimum = "0.5" - ttp = ["T1089"] - - def run(self): - indicators = [ - "netsh\s+firewall\s+set.*disable", - "netsh\s+advfirewall\s+set.*off", - ] - - for indicator in indicators: - match = self.check_executed_command(pattern=indicator, regex=True, all=True) - if match: - for fwcmd in match: - self.data.append({"command": fwcmd}) - return True - - return False \ No newline at end of file diff --git a/modules/signatures/downloader_phorpiex_mutex.py b/modules/signatures/downloader_phorpiex_mutex.py deleted file mode 100644 index 0e7bc8f8a2d..00000000000 --- a/modules/signatures/downloader_phorpiex_mutex.py +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright (C) 2019 ditekshen -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -from lib.cuckoo.common.abstracts import Signature - -class PhorpiexMutexes(Signature): - name = "phorpiex_mutexes" - description = "Creates known Phorpiex mutexes" - severity = 3 - categories = ["downloader", "dropper"] - families = ["Phorpiex"] - authors = ["ditekshen"] - minimum = "0.5" - - def run(self): - indicators = [ - ".:-Tldr-:.", - ] - - for indicator in indicators: - match_mutex = self.check_mutex(pattern=indicator, regex=True) - if match_mutex: - self.data.append({"mutex": match_mutex}) - return True - - return False \ No newline at end of file diff --git a/modules/signatures/infostealer_predatorthethief.py b/modules/signatures/infostealer_predatorthethief.py deleted file mode 100644 index 10cf763076a..00000000000 --- a/modules/signatures/infostealer_predatorthethief.py +++ /dev/null @@ -1,69 +0,0 @@ -# Copyright (C) 2019 ditekshen -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# References: -# https://any.run/malware-trends/predator -# https://securelist.com/a-predatory-tale/89779/ -# https://fumik0.com/2018/10/15/predator-the-thief-in-depth-analysis-v2-3-5/ - -from lib.cuckoo.common.abstracts import Signature - -class PredatorTheThiefMutexes(Signature): - name = "predatorthethief_mutexes" - description = "Creates Predator The Thief information stealer mutexes" - severity = 3 - categories = ["infostealer"] - families = ["PredatorTheThief"] - authors = ["ditekshen"] - minimum = "0.5" - - def run(self): - indicators = [ - "SyystemServs", - ] - - for indicator in indicators: - match = self.check_mutex(pattern=indicator, regex=True) - if match: - self.data.append({"mutex": match}) - return True - - return False - -class PredatorTheThiefFiles(Signature): - name = "predatorthethief_files" - description = "Creates Predator The Thief information stealer files" - severity = 3 - categories = ["infostealer"] - families = ["PredatorTheThief"] - authors = ["ditekshen"] - minimum = "0.5" - - def run(self): - indicators = [ - ".*\\\\vlmi\{lulz\}yg\.col$", - ".*\\\\forms\.(log|txt)$", - ".*\\\\cards\.(log|txt)$", - ".*\\\\password\.(log|txt)$", - ".*\\\\Information\.(log|txt)$", - ] - - for indicator in indicators: - match = self.check_file(pattern=indicator, regex=True) - if match: - self.data.append({"file": match}) - return True - - return False diff --git a/modules/signatures/ransomware_revil_mutex.py b/modules/signatures/ransomware_revil_mutex.py deleted file mode 100644 index 66c42ae1517..00000000000 --- a/modules/signatures/ransomware_revil_mutex.py +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright (C) 2019 ditekshen -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -from lib.cuckoo.common.abstracts import Signature - -class RevilMutexes(Signature): - name = "revil_mutexes" - description = "Creates known REvil/Sodinokibi ransomware mutexes" - severity = 3 - categories = ["ransomware"] - families = ["REvil", "Sodinokibi"] - authors = ["ditekshen"] - minimum = "0.5" - - def run(self): - indicators = [ - "112983B0-B4C9-4F9B-96C4-E5394FB8A5B4", - "1DB960B8-E5C3-F077-5D68-EEE2E637EE0B", - "206D87E0-0E60-DF25-DD8F-8E4E7D1E3BF0", - "3555A3D6-37B3-0919-F7BE-F3AAB5B6644A", - "552FFA80-3393-423d-8671-7BA046BB5906", - "6CAC559B-02B4-D929-3675-2706BBB8CF66", - "859B4E91-BAF1-3DBB-E616-E9E99E851136", - "879EBE58-4C9F-A6BE-96A3-4C51826CEC2F", - "95B97D2B-4513-2041-E8A5-AC7446F12075", - "BF29B630-7648-AADF-EC8A-94647D2349D6", - "C126B3B3-6B51-F91C-6FDF-DD2C70FA45E6", - "C19C0A84-FA11-3F9C-C3BC-0BCB16922ABF", - "C817795D-7756-05BF-A69E-6ED0CE91EAC4", - "D382D713-AA87-457D-DDD3-C3DDD8DFBC96", - "DAE678E1-967E-6A19-D564-F7FCA6E7AEBC", - "FB864EC7-B361-EA6D-545C-E1A167CCBE95", - "FDC9FA6E-8257-3E98-2600-E72145612F09", - ] - - for indicator in indicators: - match_mutex = self.check_mutex(pattern=indicator, regex=True) - if match_mutex: - self.data.append({"mutex": match_mutex}) - return True - - return False \ No newline at end of file diff --git a/modules/signatures/rat_karagany.py b/modules/signatures/rat_karagany.py deleted file mode 100644 index 9108946ba81..00000000000 --- a/modules/signatures/rat_karagany.py +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright (C) 2019 ditekshen -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -try: - import re2 as re -except ImportError: - import re - -from lib.cuckoo.common.abstracts import Signature - -class KaraganyEventObjects(Signature): - name = "karagany_system_event_objects" - description = "Creates system event objects associated with Karagany/xFrost RAT" - severity = 3 - categories = ["RAT"] - families = ["Karagany", "xFrost"] - authors = ["ditekshen"] - minimum = "0.5" - - def __init__(self, *args, **kwargs): - Signature.__init__(self, *args, **kwargs) - self.match = False - self.event_objects = [ - "__klg__", - "__pickill__", - "__klgkillsoft__", - ] - - filter_apinames = set(["NtCreateEvent", "NtCreateEventEx"]) - - def on_call(self, call, process): - event = self.get_argument(call, "EventName") - if event: - for obj in self.event_objects: - if obj in event: - self.match = True - self.data.append({"system_event_object": event}) - - def on_complete(self): - return self.match - -class KaraganyFiles(Signature): - name = "karagany_files" - description = "Creates files/directories associated with Karagany/xFrost RAT" - severity = 3 - categories = ["RAT"] - families = ["Karagany", "xFrost"] - authors = ["ditekshen"] - minimum = "0.5" - - def on_complete(self): - indicators = [ - ".*\\\\up_stat.txt$", - ".*\\\\stat_ag.txt$", - ".*\\\\serv_stat.txt$", - ".*\\\\svchost\d+\.txt$", - ".*\\\\Update\\\\Tmp\\\\.*", - ] - - for indicator in indicators: - match = self.check_write_file(patten=indicator, regex=True, all=True) - if match: - self.data.append({"path": match}) - return True - - return False \ No newline at end of file diff --git a/modules/signatures/rat_quasar.py b/modules/signatures/rat_quasar.py index 8254192c0d7..1bfa2ba5100 100644 --- a/modules/signatures/rat_quasar.py +++ b/modules/signatures/rat_quasar.py @@ -1,42 +1,39 @@ -# Copyright (C) 2019 ditekshen -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -from lib.cuckoo.common.abstracts import Signature - -class QuasarRATMutexes(Signature): - name = "quasarrat_mutexes" - description = "Creates QuasarRAT RAT mutexes" - severity = 3 - categories = ["RAT"] - families = ["QuasarRAT"] - authors = ["ditekshen"] - minimum = "0.5" - - def run(self): - indicators = [ - "^QSR_MUTEX_[A-Z0-9a-z]{18}$", - "VMFvdCsC7RFqerZinfV0sxJFo", - "9s1IUBvnvFDb76ggOFFmnhIK", - "ERveMB6XRx2pmYdoKjMnoN1f", - "ABCDEFGHIGKLMNOPQRSTUVWXYZ", - ] - - for indicator in indicators: - match = self.check_mutex(pattern=indicator, regex=True) - if match: - self.data.append({"mutex": match}) - return True - - return False \ No newline at end of file +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class QuasarMutexes(Signature): + name = "rat_quasar_mutexes" + description = "Creates known Quasar mutexes" + severity = 3 + categories = ["rat"] + families = ["Quasar"] + authors = ["wmetcalf"] + references = ["6a243d91a8253c474a88a7818c487b5caab65eb7764e2861ee131678a991737a"] + minimum = "0.5" + + def run(self): + indicators = [ + "^QSR_MUTEX", + ] + + for indicator in indicators: + if self.check_mutex(pattern=indicator,regex=True): + return True + + return False + + + diff --git a/modules/signatures/rat_xpert.py b/modules/signatures/rat_xpert.py deleted file mode 100644 index eb5143d62d0..00000000000 --- a/modules/signatures/rat_xpert.py +++ /dev/null @@ -1,62 +0,0 @@ -# Copyright (C) 2019 ditekshen -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -from lib.cuckoo.common.abstracts import Signature - -class XpertRATMutexes(Signature): - name = "xpertrat_mutexes" - description = "Creates Xpert RAT mutexes" - severity = 3 - categories = ["RAT"] - families = ["Xpert"] - authors = ["ditekshen"] - minimum = "0.5" - - def run(self): - indicators = [ - "G2L6E3O1-E775-G5J4-R4C2-P5F660S1R4A8", - ] - - for indicator in indicators: - match_mutex = self.check_mutex(pattern=indicator, regex=True) - if match_mutex: - self.data.append({"mutex": match_mutex}) - return True - - return False - -class XpertRATFiles(Signature): - name = "xpertrat_files" - description = "Creates Xpert RAT files" - severity = 3 - categories = ["RAT"] - families = ["Xpert"] - authors = ["ditekshen"] - minimum = "0.5" - - def run(self): - indicators = [ - ".*\\\\ut$", - ".*\\\\Temp\\\\.*\.bmp" - ".*\\\\G2L6E3O1-E775-G5J4-R4C2-P5F660S1R4A8$" - ] - - for indicator in indicators: - match = self.check_write_file(pattern=indicator, regex=True) - if match: - self.data.append({"file": match}) - return True - - return False \ No newline at end of file From 96feff04ac3dad89ba960489853bd8c3a9a2a727 Mon Sep 17 00:00:00 2001 From: ditekshen Date: Fri, 10 Jan 2020 08:00:44 +0000 Subject: [PATCH 04/67] Add new signatures --- .../signatures/disables_notificationcenter.py | 38 +++++++++ modules/signatures/disables_smartscreen.py | 51 ++++++++++++ modules/signatures/disables_winfirewall.py | 40 ++++++++++ .../signatures/downloader_phorpiex_mutex.py | 38 +++++++++ .../infostealer_predatorthethief.py | 69 ++++++++++++++++ modules/signatures/ransomware_revil_mutex.py | 54 +++++++++++++ modules/signatures/rat_karagany.py | 78 +++++++++++++++++++ modules/signatures/rat_xpert.py | 62 +++++++++++++++ 8 files changed, 430 insertions(+) create mode 100644 modules/signatures/disables_notificationcenter.py create mode 100644 modules/signatures/disables_smartscreen.py create mode 100644 modules/signatures/disables_winfirewall.py create mode 100644 modules/signatures/downloader_phorpiex_mutex.py create mode 100644 modules/signatures/infostealer_predatorthethief.py create mode 100644 modules/signatures/ransomware_revil_mutex.py create mode 100644 modules/signatures/rat_karagany.py create mode 100644 modules/signatures/rat_xpert.py diff --git a/modules/signatures/disables_notificationcenter.py b/modules/signatures/disables_notificationcenter.py new file mode 100644 index 00000000000..d8dd6ce1010 --- /dev/null +++ b/modules/signatures/disables_notificationcenter.py @@ -0,0 +1,38 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class DisablesNotificationCenter(Signature): + name = "disables_notificationcenter" + description = "Disables Windows Notification Center" + severity = 3 + categories = ["generic"] + authors = ["ditekshen"] + minimum = "0.5" + ttp = ["T1089"] + + def run(self): + indicators = [ + ".*\\\\Explorer\\\\DisableNotificationCenter$", + ] + + for indicator in indicators: + match = self.check_write_key(pattern=indicator, regex=True) + if match: + self.data.append({"regkey": match}) + return True + + return False \ No newline at end of file diff --git a/modules/signatures/disables_smartscreen.py b/modules/signatures/disables_smartscreen.py new file mode 100644 index 00000000000..a1399627888 --- /dev/null +++ b/modules/signatures/disables_smartscreen.py @@ -0,0 +1,51 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class DisablesSmartScreen(Signature): + name = "disables_smartscreen" + description = "Modifies or disables Windows SmartScreen" + severity = 3 + categories = ["generic"] + authors = ["ditekshen"] + minimum = "0.5" + ttp = ["T1089"] + + def run(self): + re_match = False + cmd_match = False + indicators = [ + ".*\\\\Windows\\\\CurrentVersion\\\\explorer\\\\SmartScreenEnabled$", + ".*\\\\Windows\\\\CurrentVersion\\\\AppHost\\\\SmartScreenEnabled$", + ".*\\\\MicrosoftEdge\\\\PhishingFilter$", + ] + + for indicator in indicators: + match = self.check_write_key(pattern=indicator, regex=True) + if match: + self.data.append({"regkey": match}) + re_match = True + + cmdpat = ".*\"SmartScreenEnabled\".*\"Off\".*" + match = self.check_executed_command(pattern=cmdpat, regex=True) + if match: + self.data.append({"command": match}) + cmd_match = True + + if re_match or cmd_match: + return True + + return False \ No newline at end of file diff --git a/modules/signatures/disables_winfirewall.py b/modules/signatures/disables_winfirewall.py new file mode 100644 index 00000000000..fdc42408887 --- /dev/null +++ b/modules/signatures/disables_winfirewall.py @@ -0,0 +1,40 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class DisablesWindowsFirewall(Signature): + name = "disables_winfirewall" + description = "Disables Windows firewall" + severity = 3 + categories = ["generic"] + authors = ["ditekshen"] + minimum = "0.5" + ttp = ["T1089"] + + def run(self): + indicators = [ + "netsh\s+firewall\s+set.*disable", + "netsh\s+advfirewall\s+set.*off", + ] + + for indicator in indicators: + match = self.check_executed_command(pattern=indicator, regex=True, all=True) + if match: + for fwcmd in match: + self.data.append({"command": fwcmd}) + return True + + return False \ No newline at end of file diff --git a/modules/signatures/downloader_phorpiex_mutex.py b/modules/signatures/downloader_phorpiex_mutex.py new file mode 100644 index 00000000000..0e7bc8f8a2d --- /dev/null +++ b/modules/signatures/downloader_phorpiex_mutex.py @@ -0,0 +1,38 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class PhorpiexMutexes(Signature): + name = "phorpiex_mutexes" + description = "Creates known Phorpiex mutexes" + severity = 3 + categories = ["downloader", "dropper"] + families = ["Phorpiex"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + ".:-Tldr-:.", + ] + + for indicator in indicators: + match_mutex = self.check_mutex(pattern=indicator, regex=True) + if match_mutex: + self.data.append({"mutex": match_mutex}) + return True + + return False \ No newline at end of file diff --git a/modules/signatures/infostealer_predatorthethief.py b/modules/signatures/infostealer_predatorthethief.py new file mode 100644 index 00000000000..10cf763076a --- /dev/null +++ b/modules/signatures/infostealer_predatorthethief.py @@ -0,0 +1,69 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# References: +# https://any.run/malware-trends/predator +# https://securelist.com/a-predatory-tale/89779/ +# https://fumik0.com/2018/10/15/predator-the-thief-in-depth-analysis-v2-3-5/ + +from lib.cuckoo.common.abstracts import Signature + +class PredatorTheThiefMutexes(Signature): + name = "predatorthethief_mutexes" + description = "Creates Predator The Thief information stealer mutexes" + severity = 3 + categories = ["infostealer"] + families = ["PredatorTheThief"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + "SyystemServs", + ] + + for indicator in indicators: + match = self.check_mutex(pattern=indicator, regex=True) + if match: + self.data.append({"mutex": match}) + return True + + return False + +class PredatorTheThiefFiles(Signature): + name = "predatorthethief_files" + description = "Creates Predator The Thief information stealer files" + severity = 3 + categories = ["infostealer"] + families = ["PredatorTheThief"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + ".*\\\\vlmi\{lulz\}yg\.col$", + ".*\\\\forms\.(log|txt)$", + ".*\\\\cards\.(log|txt)$", + ".*\\\\password\.(log|txt)$", + ".*\\\\Information\.(log|txt)$", + ] + + for indicator in indicators: + match = self.check_file(pattern=indicator, regex=True) + if match: + self.data.append({"file": match}) + return True + + return False diff --git a/modules/signatures/ransomware_revil_mutex.py b/modules/signatures/ransomware_revil_mutex.py new file mode 100644 index 00000000000..66c42ae1517 --- /dev/null +++ b/modules/signatures/ransomware_revil_mutex.py @@ -0,0 +1,54 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class RevilMutexes(Signature): + name = "revil_mutexes" + description = "Creates known REvil/Sodinokibi ransomware mutexes" + severity = 3 + categories = ["ransomware"] + families = ["REvil", "Sodinokibi"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + "112983B0-B4C9-4F9B-96C4-E5394FB8A5B4", + "1DB960B8-E5C3-F077-5D68-EEE2E637EE0B", + "206D87E0-0E60-DF25-DD8F-8E4E7D1E3BF0", + "3555A3D6-37B3-0919-F7BE-F3AAB5B6644A", + "552FFA80-3393-423d-8671-7BA046BB5906", + "6CAC559B-02B4-D929-3675-2706BBB8CF66", + "859B4E91-BAF1-3DBB-E616-E9E99E851136", + "879EBE58-4C9F-A6BE-96A3-4C51826CEC2F", + "95B97D2B-4513-2041-E8A5-AC7446F12075", + "BF29B630-7648-AADF-EC8A-94647D2349D6", + "C126B3B3-6B51-F91C-6FDF-DD2C70FA45E6", + "C19C0A84-FA11-3F9C-C3BC-0BCB16922ABF", + "C817795D-7756-05BF-A69E-6ED0CE91EAC4", + "D382D713-AA87-457D-DDD3-C3DDD8DFBC96", + "DAE678E1-967E-6A19-D564-F7FCA6E7AEBC", + "FB864EC7-B361-EA6D-545C-E1A167CCBE95", + "FDC9FA6E-8257-3E98-2600-E72145612F09", + ] + + for indicator in indicators: + match_mutex = self.check_mutex(pattern=indicator, regex=True) + if match_mutex: + self.data.append({"mutex": match_mutex}) + return True + + return False \ No newline at end of file diff --git a/modules/signatures/rat_karagany.py b/modules/signatures/rat_karagany.py new file mode 100644 index 00000000000..9108946ba81 --- /dev/null +++ b/modules/signatures/rat_karagany.py @@ -0,0 +1,78 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +try: + import re2 as re +except ImportError: + import re + +from lib.cuckoo.common.abstracts import Signature + +class KaraganyEventObjects(Signature): + name = "karagany_system_event_objects" + description = "Creates system event objects associated with Karagany/xFrost RAT" + severity = 3 + categories = ["RAT"] + families = ["Karagany", "xFrost"] + authors = ["ditekshen"] + minimum = "0.5" + + def __init__(self, *args, **kwargs): + Signature.__init__(self, *args, **kwargs) + self.match = False + self.event_objects = [ + "__klg__", + "__pickill__", + "__klgkillsoft__", + ] + + filter_apinames = set(["NtCreateEvent", "NtCreateEventEx"]) + + def on_call(self, call, process): + event = self.get_argument(call, "EventName") + if event: + for obj in self.event_objects: + if obj in event: + self.match = True + self.data.append({"system_event_object": event}) + + def on_complete(self): + return self.match + +class KaraganyFiles(Signature): + name = "karagany_files" + description = "Creates files/directories associated with Karagany/xFrost RAT" + severity = 3 + categories = ["RAT"] + families = ["Karagany", "xFrost"] + authors = ["ditekshen"] + minimum = "0.5" + + def on_complete(self): + indicators = [ + ".*\\\\up_stat.txt$", + ".*\\\\stat_ag.txt$", + ".*\\\\serv_stat.txt$", + ".*\\\\svchost\d+\.txt$", + ".*\\\\Update\\\\Tmp\\\\.*", + ] + + for indicator in indicators: + match = self.check_write_file(patten=indicator, regex=True, all=True) + if match: + self.data.append({"path": match}) + return True + + return False \ No newline at end of file diff --git a/modules/signatures/rat_xpert.py b/modules/signatures/rat_xpert.py new file mode 100644 index 00000000000..eb5143d62d0 --- /dev/null +++ b/modules/signatures/rat_xpert.py @@ -0,0 +1,62 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class XpertRATMutexes(Signature): + name = "xpertrat_mutexes" + description = "Creates Xpert RAT mutexes" + severity = 3 + categories = ["RAT"] + families = ["Xpert"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + "G2L6E3O1-E775-G5J4-R4C2-P5F660S1R4A8", + ] + + for indicator in indicators: + match_mutex = self.check_mutex(pattern=indicator, regex=True) + if match_mutex: + self.data.append({"mutex": match_mutex}) + return True + + return False + +class XpertRATFiles(Signature): + name = "xpertrat_files" + description = "Creates Xpert RAT files" + severity = 3 + categories = ["RAT"] + families = ["Xpert"] + authors = ["ditekshen"] + minimum = "0.5" + + def run(self): + indicators = [ + ".*\\\\ut$", + ".*\\\\Temp\\\\.*\.bmp" + ".*\\\\G2L6E3O1-E775-G5J4-R4C2-P5F660S1R4A8$" + ] + + for indicator in indicators: + match = self.check_write_file(pattern=indicator, regex=True) + if match: + self.data.append({"file": match}) + return True + + return False \ No newline at end of file From cff54dedd65cd85c86edf0abe8594e0ff1d2228d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Aguilar-Tablada=20Espinosa?= Date: Fri, 10 Jan 2020 13:59:54 +0100 Subject: [PATCH 05/67] (BUG) api.py typo affect file uploads --- utils/api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/api.py b/utils/api.py index 92a37cfda62..2c0ebf868bd 100644 --- a/utils/api.py +++ b/utils/api.py @@ -107,7 +107,7 @@ def tasks_create_file(): shrike_sid = request.forms.get("shrike_sid", None) shrike_refer = request.forms.get("shrike_refer", None) static = bool(request.POST.get("static", False)) - unique = bool(request.form.get("unique", False)) + unique = bool(request.forms.get("unique", False)) if memory.upper() == 'FALSE' or memory == '0': memory = False else: From 1f6f64e1f4eddf2ce603413895a545b2c2eae12b Mon Sep 17 00:00:00 2001 From: DoomedRaven Date: Sun, 12 Jan 2020 12:31:23 +0100 Subject: [PATCH 06/67] add advanced filtering from @JohnPeng47 --- web/analysis/urls.py | 3 +- web/analysis/views.py | 10 +- web/static/css/style.css | 11 +- .../analysis/behavior/_processes.html | 279 ++++++++++-------- 4 files changed, 181 insertions(+), 122 deletions(-) diff --git a/web/analysis/urls.py b/web/analysis/urls.py index 6bc1e989b4d..30fc736a330 100644 --- a/web/analysis/urls.py +++ b/web/analysis/urls.py @@ -19,7 +19,8 @@ url(r"^shrike/(?P\d+)/$", views.shrike, name='shrike'), url(r"^remove/(?P\d+)/$", views.remove, name='remove'), url(r"^chunk/(?P\d+)/(?P\d+)/(?P\d+)/$", views.chunk, name='chunk'), - url(r"^filtered/(?P\d+)/(?P\d+)/(?P\w+)/(?P[!]?[A-Za-z_0-9,%]*)/$", views.filtered_chunk, name='filtered_chunk'), + url(r"^filtered/(?P\d+)/(?P\d+)/(?P\w+)/(?P[!]?[A-Za-z_0-9,%]*)/(?P\w+)/(?P\w+)/$", + views.filtered_chunk, name='filtered_chunk'), url(r"^search/(?P\d+)/$", views.search_behavior, name='search_behavior'), url(r"^search/$", views.search, name='search'), url(r"^pending/$", views.pending, name='pending'), diff --git a/web/analysis/views.py b/web/analysis/views.py index fa1cabfa5bf..87e3d57340b 100644 --- a/web/analysis/views.py +++ b/web/analysis/views.py @@ -377,7 +377,7 @@ def chunk(request, task_id, pid, pagenum): @require_safe @conditional_login_required(login_required, settings.WEB_AUTHENTICATION) -def filtered_chunk(request, task_id, pid, category, apilist): +def filtered_chunk(request, task_id, pid, category, apilist, caller, tid): """Filters calls for call category. @param task_id: cuckoo task id @param pid: pid you want calls @@ -422,6 +422,8 @@ def filtered_chunk(request, task_id, pid, category, apilist): apis = apilist.split(',') apis[:] = [s.strip().lower() for s in apis if len(s.strip())] + tid = int(tid) + # Populate dict, fetching data from all calls and selecting only appropriate category/APIs. for call in process["calls"]: if enabledconf["mongodb"]: @@ -429,7 +431,11 @@ def filtered_chunk(request, task_id, pid, category, apilist): if es_as_db: chunk = es.search(index=fullidx, doc_type="calls", q="_id: \"%s\"" % call)['hits']['hits'][0]['_source'] for call in chunk["calls"]: - if category == "all" or call["category"] == category: + # filter by call or tid + if caller != "null" or tid != 0: + if call["caller"] == caller and call["thread_id"] == tid: + filtered_process["calls"].append(call) + elif category == "all" or call["category"] == category: if len(apis) > 0: add_call = -1 for api in apis: diff --git a/web/static/css/style.css b/web/static/css/style.css index 673db15991a..25acd06c5ac 100644 --- a/web/static/css/style.css +++ b/web/static/css/style.css @@ -133,7 +133,12 @@ a.tag-label { .page-header { margin-bottom: 10px; } - +.filter-box { + display : none; + padding-top: 15px; + height : auto; + width : 40%; +} /* Fix the icon tab override */ .nav-tabs > .active > a > [class^="icon-"],.nav-tabs>.active>a>[class*=" icon-"] { background-image:url("../img/glyphicons-halflings.png") !important; } @@ -179,3 +184,7 @@ pre { background-color: white; color: #5bc0de; } +#filter-toggle { + display: inline-block; + cursor: pointer; +} diff --git a/web/templates/analysis/behavior/_processes.html b/web/templates/analysis/behavior/_processes.html index 1a1101a89c7..ba9ee1e5f30 100644 --- a/web/templates/analysis/behavior/_processes.html +++ b/web/templates/analysis/behavior/_processes.html @@ -1,152 +1,182 @@ {% load analysis_tags %}
- {% include "analysis/behavior/_search.html" %} - {% for process in analysis.behavior.processes %} -
-
{{process.process_name}}, PID: {{process.process_id}}, Parent PID: {{process.parent_id}} -
Full Path: {{process.module_path}} - {% if process.environ.CommandLine %} -
Command Line: {{ process.environ.CommandLine }} - {% endif %} + {% include "analysis/behavior/_search.html" %} + {% for process in analysis.behavior.processes %} +
+
+ {{process.process_name}}, PID: {{process.process_id}}, Parent PID: {{process.parent_id}} +
Full Path: {{process.module_path}} + {% if process.environ.CommandLine %} +
Command Line: {{ process.environ.CommandLine }} + {% endif %}
- default - registry - filesystem - network - process - threading - services - device - synchronization - crypto - browser - all -
- - + +
+ + +

Additional Filters

+
+
+
+ +
+
+ + +
+
@@ -168,9 +211,9 @@
- {% endfor %} + {% endfor %}
From bca49ac0a9734069a9d41cacb632e5b820763ae1 Mon Sep 17 00:00:00 2001 From: DoomedRaven Date: Sun, 12 Jan 2020 12:32:38 +0100 Subject: [PATCH 07/67] small cleanup --- web/templates/analysis/report.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/templates/analysis/report.html b/web/templates/analysis/report.html index f801f395870..36d01f78958 100644 --- a/web/templates/analysis/report.html +++ b/web/templates/analysis/report.html @@ -45,7 +45,7 @@ {% if analysis.behavior.processes %}
  • Behavioral Analysis
  • {% endif %}
  • Network Analysis
  • {% if analysis.info.category != "pcap" and analysis.info.category != "static" %} -
  • Dropped Files ({{analysis.dropped}})
  • +
  • Dropped Files
  • {% if analysis.procmemory|length %}
  • Process Memory ({{analysis.procmemory|length}})
  • {% endif %} {% if analysis.memory %}
  • Memory Analysis
  • {% endif %} {% if analysis.procdump|length %}
  • Process Dumps ({{analysis.procdump|length}})
  • {% endif %} From f658a02aeca3b8e2ccc9a9c85c15db35a7233cd2 Mon Sep 17 00:00:00 2001 From: DoomedRaven Date: Sun, 12 Jan 2020 18:26:31 +0100 Subject: [PATCH 08/67] Update api.py --- utils/api.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/utils/api.py b/utils/api.py index 2c0ebf868bd..40d5e3caf0b 100644 --- a/utils/api.py +++ b/utils/api.py @@ -124,7 +124,7 @@ def tasks_create_file(): if unique and db.check_file_uniq(File(temp_file_path).get_sha256()): resp = {"error": True, "error_value": "Duplicated file, disable unique option to force submission"} - return jsonize(resp, response=True) + return jsonize(resp) if pcap: if data.filename.lower().endswith(".saz"): @@ -138,7 +138,7 @@ def tasks_create_file(): else: resp = {"error": True, "error_value": "Failed to convert PCAP to SAZ"} - return jsonize(resp, response=True) + return jsonize(resp) else: path = temp_file_path task_id = db.add_pcap(file_path=path) @@ -441,7 +441,7 @@ def tasks_iocs(task_id, detail=False): if buf is None: resp = {"error": True, "error_value": "Sample not found in database"} - return jsonize(resp, response=True) + return jsonize(resp) data = {} if "tr_extractor" in buf: From 07b43fa96d5ac6946568650d7f8d680b5843ec14 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 13 Jan 2020 14:29:55 +0000 Subject: [PATCH 09/67] VMware Server machinery module Py3 fix --- modules/machinery/vmwareserver.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/machinery/vmwareserver.py b/modules/machinery/vmwareserver.py index 3454fdbb343..57384b8c0de 100644 --- a/modules/machinery/vmwareserver.py +++ b/modules/machinery/vmwareserver.py @@ -186,7 +186,7 @@ def _is_running(self, vmx_path): "Reason: %s" % (vmx_path, e)) else: if output: - return vmx_path in output + return vmx_path in output.decode("utf-8") else: raise CuckooMachineError("Unable to check running status " "for %s. No output from " From 91ff312396cf4bc9eedafcfd081d36f7c81a23eb Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 13 Jan 2020 15:51:42 +0000 Subject: [PATCH 10/67] Further fix for VMware Server machinery module --- modules/machinery/vmwareserver.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/machinery/vmwareserver.py b/modules/machinery/vmwareserver.py index 57384b8c0de..caebf9b4b99 100644 --- a/modules/machinery/vmwareserver.py +++ b/modules/machinery/vmwareserver.py @@ -57,7 +57,7 @@ def _check_snapshot(self, vmx_path, snapshot): " listSnapshots " + "\"" + vmx_path + "\"" try: - p = subprocess.Popen(check_string, universal_newlines=True,, shell=True) + p = subprocess.Popen(check_string, universal_newlines=True, shell=True) output, _ = p.communicate() except OSError as e: raise CuckooMachineError("Unable to get snapshot list for %s. " @@ -186,7 +186,7 @@ def _is_running(self, vmx_path): "Reason: %s" % (vmx_path, e)) else: if output: - return vmx_path in output.decode("utf-8") + return vmx_path in output else: raise CuckooMachineError("Unable to check running status " "for %s. No output from " From 04d288f99809ac9c9d4167c014445aad63ef0f95 Mon Sep 17 00:00:00 2001 From: DoomedRaven Date: Mon, 13 Jan 2020 19:42:38 +0100 Subject: [PATCH 11/67] fix suricatasc, fix dist logical bug --- conf/processing.conf | 2 +- modules/processing/static.py | 12 ++++++++---- utils/dist.py | 9 ++++++--- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/conf/processing.conf b/conf/processing.conf index eae450e2ec4..d30f6e882a7 100644 --- a/conf/processing.conf +++ b/conf/processing.conf @@ -155,7 +155,7 @@ zippass = infected bin = /usr/bin/suricata conf = /etc/suricata/suricata.yaml ##Runmode "socket" Options -pylib_dir = /usr/lib/python2.7/dist-packages/suricatasc/ +pylib_dir = /usr/lib/python2.7/dist-packages/ socket_file = /var/run/suricata/suricata-command.socket [cif] diff --git a/modules/processing/static.py b/modules/processing/static.py index 2f5123e01c1..b5de17aaa34 100644 --- a/modules/processing/static.py +++ b/modules/processing/static.py @@ -205,7 +205,8 @@ def _get_custom_attrs(self): item["value"] = convert_to_printable(valueval) ret.append(item) return ret - except: + except Exception as e: + print(e) return None def _get_assembly_refs(self): @@ -227,7 +228,8 @@ def _get_assembly_refs(self): ret.append(item) return ret - except: + except Exception as e: + print(e) return None def _get_assembly_info(self): @@ -240,7 +242,8 @@ def _get_assembly_info(self): if line.startswith("Version:"): ret["version"] = convert_to_printable(line[8:].strip()) return ret - except: + except Exception as e: + print(e) return None def _get_type_refs(self): @@ -259,7 +262,8 @@ def _get_type_refs(self): ret.append(item) return sorted(ret) - except: + except Exception as e: + print(e) return None def run(self): diff --git a/utils/dist.py b/utils/dist.py index 1d1867f88b3..af5dd06e842 100644 --- a/utils/dist.py +++ b/utils/dist.py @@ -616,7 +616,10 @@ def submit_tasks(self, node_id, pend_tasks_num, options_like=False, force_push_p if node.name != "master": # don't do nothing if nothing in pending # Get tasks from main_db submitted through web interface - main_db_tasks = main_db.list_tasks(status=TASK_PENDING, order_by=desc("priority"), options_like=options_like)#, limit=pend_tasks_num) + main_db_tasks = main_db.list_tasks(status=TASK_PENDING, order_by=desc("priority"), options_like=options_like, limit=pend_tasks_num) + if not main_db_tasks: + return + if main_db_tasks: for t in main_db_tasks: force_push = False @@ -684,7 +687,7 @@ def submit_tasks(self, node_id, pend_tasks_num, options_like=False, force_push_p else: main_db.set_status(t.id, TASK_DISTRIBUTED) limit += 1 - if limit == pend_tasks_num: + if limit == pend_tasks_num or limit == len(main_db_tasks): db.close() return @@ -793,7 +796,7 @@ def run(self): STATUSES = statuses #first submit tasks with specified node - self.submit_tasks(node.id, MINIMUMQUEUE[node.name]*2, "%node={}%".format(node.name), force_push_push=True) + self.submit_tasks(node.id, MINIMUMQUEUE[node.name], "%node={}%".format(node.name), force_push_push=True) # Balance the tasks, works fine if no tags are set node_name = min(STATUSES, key=lambda k: STATUSES[k]["completed"] + STATUSES[k]["pending"]) From 8d78be12c476309fb3da9e410c5a6f5f34a9af0a Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 14 Jan 2020 18:03:50 +0000 Subject: [PATCH 12/67] Add extraction options to capemon and update packages --- analyzer/windows/dll/capemon.dll | Bin 508928 -> 576000 bytes analyzer/windows/dll/capemon_x64.dll | Bin 618496 -> 695296 bytes .../windows/modules/packages/Compression.py | 4 ++-- .../modules/packages/Compression_dll.py | 4 ++-- .../modules/packages/Compression_doc.py | 4 ++-- .../modules/packages/Compression_js.py | 4 ++-- .../modules/packages/Compression_pdf.py | 4 ++-- .../modules/packages/Compression_zip.py | 4 ++-- analyzer/windows/modules/packages/Emotet.py | 3 ++- .../windows/modules/packages/Emotet_batch.py | 4 ++-- .../windows/modules/packages/Emotet_doc.py | 4 ++-- .../windows/modules/packages/Extraction.py | 12 ++++++++---- .../modules/packages/Extraction_dll.py | 5 ++--- .../modules/packages/Extraction_jar.py | 4 ++-- .../windows/modules/packages/Extraction_js.py | 4 ++-- .../modules/packages/Extraction_pdf.py | 3 ++- .../modules/packages/Extraction_ps1.py | 4 ++-- .../modules/packages/Extraction_regsvr.py | 5 +++-- .../modules/packages/Extraction_zip.py | 8 ++++---- .../windows/modules/packages/Injection.py | 4 ++-- .../windows/modules/packages/Injection_dll.py | 6 +++--- .../windows/modules/packages/Injection_doc.py | 4 ++-- .../windows/modules/packages/Injection_js.py | 4 ++-- .../windows/modules/packages/Injection_pdf.py | 3 ++- .../windows/modules/packages/Injection_ps1.py | 7 +++++-- .../windows/modules/packages/Injection_zip.py | 4 ++-- .../modules/packages/Shellcode-Extraction.py | 10 +++++----- 27 files changed, 66 insertions(+), 56 deletions(-) diff --git a/analyzer/windows/dll/capemon.dll b/analyzer/windows/dll/capemon.dll index 127719b35452606f96ab94e476028114f8fe5e0b..367bc68a9a0760071350f8b677d8bb62773a6ebb 100755 GIT binary patch delta 255381 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
    From 8ce9a3ff15a18f0ae7aa323e4af1ec4c58c83cf7 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 17 Jan 2020 14:45:28 +0000 Subject: [PATCH 33/67] Merge Hancitor extraction into capemon, fix Extraction for dlls. --- analyzer/windows/dll/capemon.dll | Bin 571904 -> 571904 bytes analyzer/windows/dll/capemon_x64.dll | Bin 690688 -> 691200 bytes analyzer/windows/modules/packages/Hancitor.py | 3 +-- .../windows/modules/packages/Hancitor_doc.py | 3 +-- 4 files changed, 2 insertions(+), 4 deletions(-) diff --git a/analyzer/windows/dll/capemon.dll b/analyzer/windows/dll/capemon.dll index 9866d12a519a12feea87c5e0490c4afafd37d7b2..0b216b65f664e1fc5349d696616a81517a99d666 100755 GIT binary patch delta 115863 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 delta 115322 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 delta 179383 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

    5h$U#@Ux^NM3f^}kjiIyfQ(`?@ICDND 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 AH~;_u diff --git a/analyzer/windows/modules/packages/Hancitor.py b/analyzer/windows/modules/packages/Hancitor.py index 3b32be7c5b5..e4c594d8a61 100644 --- a/analyzer/windows/modules/packages/Hancitor.py +++ b/analyzer/windows/modules/packages/Hancitor.py @@ -16,8 +16,7 @@ def __init__(self, options={}, config=None): self.config = config self.options = options self.pids = [] - self.options["dll"] = "Hancitor.dll" - #self.options["dll_64"] = "Hancitor_x64.dll" + self.options["hancitor"] = "1" def start(self, path): args = self.options.get("arguments") diff --git a/analyzer/windows/modules/packages/Hancitor_doc.py b/analyzer/windows/modules/packages/Hancitor_doc.py index 9880887ccfe..73bd87549ef 100644 --- a/analyzer/windows/modules/packages/Hancitor_doc.py +++ b/analyzer/windows/modules/packages/Hancitor_doc.py @@ -20,8 +20,7 @@ def __init__(self, options={}, config=None): """@param options: options dict.""" self.config = config self.options = options - self.options["dll"] = "Hancitor.dll" - #self.options["dll_64"] = "Hancitor_x64.dll" + self.options["hancitor"] = "1" def start(self, path): word = self.get_path_glob("Microsoft Office Word") From 799ee4997ad33fd2d3b3394d5127462b6965408d Mon Sep 17 00:00:00 2001 From: me <7831008+enzok@users.noreply.github.com> Date: Fri, 17 Jan 2020 10:41:50 -0500 Subject: [PATCH 34/67] fix - call method syntax error --- utils/cleaners.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/cleaners.py b/utils/cleaners.py index bf3877de9fc..830734e45f2 100644 --- a/utils/cleaners.py +++ b/utils/cleaners.py @@ -99,7 +99,7 @@ def delete_mongo_data(tid): try: results_db = connect_to_mongo()[mdb] analyses = results_db.analysis.find({"info.id": int(tid)}) - if analyses.count > 0: + if analyses.count() > 0: for analysis in analyses: log.info("deleting MongoDB data for Task #{0}".format(tid)) for process in analysis.get("behavior", {}).get("processes", []): From 809f0b67a14fadd72cc7191dd3e24ffbb716a60b Mon Sep 17 00:00:00 2001 From: DoomedRaven Date: Fri, 17 Jan 2020 21:51:12 +0100 Subject: [PATCH 35/67] thanks Marcos for bson apicalls compression --- conf/processing.conf | 5 + lib/cuckoo/common/compressor.py | 186 ++++++++++++++++++++++++++++ modules/processing/behavior.py | 23 +++- web/templates/submission/index.html | 10 +- 4 files changed, 220 insertions(+), 4 deletions(-) create mode 100644 lib/cuckoo/common/compressor.py diff --git a/conf/processing.conf b/conf/processing.conf index 5318472066a..9b5de956546 100644 --- a/conf/processing.conf +++ b/conf/processing.conf @@ -69,6 +69,11 @@ dnswhitelist = yes # additional entries dnswhitelist_file = extra/whitelist_domains.txt +# Should the server use a compressed version of behavioural logs? This helps +# in saving space in Mongo, accelerates searchs and reduce the size of the +# final JSON report. +[loop_detection] +enabled = no [static] enabled = yes diff --git a/lib/cuckoo/common/compressor.py b/lib/cuckoo/common/compressor.py new file mode 100644 index 00000000000..3850725af8b --- /dev/null +++ b/lib/cuckoo/common/compressor.py @@ -0,0 +1,186 @@ +import os +import struct +import binascii +import logging + +log = logging.getLogger(__name__) + +try: + import bson + HAVE_BSON = True +except ImportError: + HAVE_BSON = False +else: + # The BSON module provided by pymongo works through its "BSON" class. + if hasattr(bson, "BSON"): + bson_decode = lambda d: bson.BSON(d).decode() + # The BSON module provided by "pip install bson" works through the + # "loads" function (just like pickle etc.) + elif hasattr(bson, "loads"): + bson_decode = lambda d: bson.loads(d) + else: + HAVE_BSON = False + +class NGram: + def __init__(self, order): + self.order = order + self.buffer = [] + + def add(self, element): + tmp = None + if not element: + return tmp + + if len(self.buffer) == self.order * 2: + tmp = self.buffer.pop(0) + + if type(element) == list: + self.buffer.append(element) + else: + self.buffer.append([element, 1]) + + self.analyse() + return tmp + + def analyse(self): + tmp = [c[0][0] for c in self.buffer] + if tmp[0:self.order] == tmp[self.order:]: + for i in range(self.order): + self.buffer[i][1] += self.buffer[i+self.order][1] + self.buffer = self.buffer[0:self.order] + +class Compressor: + def __init__(self, level): + self.level = level + self.ngrams = [ NGram(i) for i in range(1,level+1) ] + self.final = [] + + def add(self, element): + head, tail = (self.ngrams[0], self.ngrams[1:]) + out = head.add(element) + + for t in tail: + out = t.add(out) + + if out: + self.final.append(out) + + def flush(self): + for i in range(len(self.ngrams)): + current_buffer = self.ngrams[i].buffer + for out in current_buffer: + for u in range(i+1, len(self.ngrams)): + out = self.ngrams[u].add(out) + if out: + self.final.append(out) + +class CuckooBsonCompressor: + def __init__(self): + self.threads = {} + self.callmap = {} + self.head = [] + self.ccounter = 0 + + def __next_message(self): + data = self.fd_in.read(4) + if not data: + return (False, False) + _size = struct.unpack('I', data)[0] + data += self.fd_in.read(_size - 4) + self.raw_data = data + return (data, bson_decode(data)) + + def run(self, file_path): + if not os.path.isfile(file_path) and os.stat(file_path).st_size: + log.warning('File %s does not exists or it is invalid.', file_path) + return False + + self.fd_in = open(file_path, 'rb') + + msg = '---' + while msg: + data, msg = self.__next_message() + + if msg: + mtype = msg.get('type') # message type [debug, new_process, info] + if mtype not in ['debug', 'new_process', 'info']: + _id = msg.get('I', -1) + if not self.category.startswith('__'): + tid = msg.get('T', -1) + time = msg.get('t', 0) + + if tid not in self.threads: + self.threads[tid] = Compressor(100) + + csum = self.checksum(msg) + self.ccounter += 1 + v = (csum, self.ccounter, time) + self.threads[tid].add(v) + + if csum not in self.callmap: + self.callmap[csum] = msg + else: + self.head.append(data) + else: + self.category = msg.get('category', 'None') + self.head.append(data) + + self.fd_in.close() + + return self.flush(file_path) + + def flush(self, file_path): + # This function flushes ngram buffers within compressor and merges + # threads compressed call lists trying preserve original order + + compressed_path = file_path + '.compressed' + if os.path.isfile(compressed_path): + os.remove(compressed_path) + + fd = open(compressed_path, 'wb') + + for d in self.head: + fd.write(d) + + final = [] + for tid, c in self.threads.items(): + c.flush() + for element, repeated in c.final: + data = self.callmap.get(element[0]).copy() + data['r'] += repeated + data['t'] = element[2] + data['order'] = element[1] + final.append(data) + + final.sort(key=lambda x: x['order']) + + if final and os.path.isfile(compressed_path): + for d in final: + d.pop('order') + edata = bson.BSON.encode(d) + fd.write(edata) + + os.rename(file_path, '{}.raw'.format(file_path)) + os.symlink('{}.compressed'.format(file_path), file_path) + else: + return False + + return True + + def checksum(self, msg): + # This function calculates a 4 bytes checksum for each call + # this value is used for identifying a call setup. + + index = msg.get('I', -1) + args = ''.join([ str(c) for c in msg['args'] ]) + content = [ + str(index), # api call + str(msg['T']), # thread id + str(msg['R']), # caller + str(args), # call args + str(self.category), # category + str(msg['P']) # parentcaller + ] + content = ''.join(content) + + return binascii.crc32(bytes(content, 'utf8')) diff --git a/modules/processing/behavior.py b/modules/processing/behavior.py index 88fbdb789d2..a9984044646 100644 --- a/modules/processing/behavior.py +++ b/modules/processing/behavior.py @@ -11,10 +11,12 @@ from lib.cuckoo.common.abstracts import Processing from lib.cuckoo.common.config import Config from lib.cuckoo.common.netlog import BsonParser +from lib.cuckoo.common.compressor import CuckooBsonCompressor from lib.cuckoo.common.utils import convert_to_printable, pretty_print_arg, pretty_print_retval, logtime, default_converter, bytes2str log = logging.getLogger(__name__) cfg = Config() +cfg_process = Config("processing") def fix_key(key): """Fix a registry key to have it normalized. @@ -345,9 +347,11 @@ def _parse(self, row): class Processes: """Processes analyzer.""" - def __init__(self, logs_path): + def __init__(self, logs_path, task): """@param logs_path: logs path.""" self._logs_path = logs_path + self.task = task + self.options = dict((value.strip() for value in option.split("=", 1)) for option in self.task["options"].split(",") if option and '=' in option) def run(self): """Run analysis. @@ -368,6 +372,10 @@ def run(self): for file_name in os.listdir(self._logs_path): file_path = os.path.join(self._logs_path, file_name) + # Check if Loop Detection is enabled globally or locally (as an option) + if cfg_process.loop_detection.enabled or self.options.get("loop_detection"): + self.compress_log_file(file_path) + if os.path.isdir(file_path): continue @@ -400,6 +408,19 @@ def run(self): return results + def compress_log_file(self, file_path): + if file_path.endswith(".bson") and os.stat(file_path).st_size: + if not CuckooBsonCompressor().run(file_path): + log.warning("Could not execute loop detection analysis.") + else: + log.info("BSON was compressed successfully.") + return True + else: + log.warning("Nonexistent or empty BSON file \"%s\".", file_path) + + return False + + class Summary: """Generates summary information.""" diff --git a/web/templates/submission/index.html b/web/templates/submission/index.html index aba9f5d1c77..71b10d8e92a 100644 --- a/web/templates/submission/index.html +++ b/web/templates/submission/index.html @@ -362,6 +362,10 @@ referrer Specify the referrer to be used for URL tasks, overriding the default Google referrer + + loop_detection + Set this option to 1 to enable loop detection (compress call logs - behavior analysis) + static Check if config can be extracted statically, if not extracts, send to vm @@ -370,15 +374,15 @@ Dl&Exec add headers example dnl_user_agent: "CAPE the best", dnl_referer: google - + servicename - for service package Specify the service name - + servicedesc - for service package Service description - + arguments - for service package Service arguments From e4eee11ef24c6d9d6249fc7f74861a3d03c9f285 Mon Sep 17 00:00:00 2001 From: DoomedRaven Date: Fri, 17 Jan 2020 21:55:22 +0100 Subject: [PATCH 36/67] changelog --- acknowledgment.md | 1 + changelog.md | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/acknowledgment.md b/acknowledgment.md index 25a09abac44..4b0c8612d5e 100644 --- a/acknowledgment.md +++ b/acknowledgment.md @@ -25,5 +25,6 @@ * kalos * Spiralem * John Peng +* mabj * And many others <3 diff --git a/changelog.md b/changelog.md index b051c495742..4ce0aef56fe 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,7 @@ +### [17-01-2020] +* Bson data compression to remove api spamming, [details](https://github.com/ctxis/CAPE/pull/470), thanks @mabj +* Many bug fixes in cleaners.py, thanks @Enzok + ### [14-01-2020] * Fix local_settings * move all in 1 dlls, example option to capemon: combo=1,extraction=1,injection=1,compression=1 From 21f98e00fc453711018d40475c31b4e1c0caf97a Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 18 Jan 2020 11:32:38 +0000 Subject: [PATCH 37/67] Remove old commented code (procdump related) --- web/submission/views.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/web/submission/views.py b/web/submission/views.py index e276edf9aaf..6a079d3a1f4 100644 --- a/web/submission/views.py +++ b/web/submission/views.py @@ -163,10 +163,6 @@ def index(request, resubmit_hash=False): if options: options += "," options += "procmemdump=1,procdump=1" - #else: - # if options: - # options += "," - # options += "procdump=1" if request.POST.get("process_memory"): if options: From f0997bbf10bd8366e66ce4639ac8193de356e233 Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 18 Jan 2020 11:36:53 +0000 Subject: [PATCH 38/67] Remove bad DanaBot sig due to FPs --- data/yara/CAPE/DanaBot.yar | 13 ------------- 1 file changed, 13 deletions(-) delete mode 100644 data/yara/CAPE/DanaBot.yar diff --git a/data/yara/CAPE/DanaBot.yar b/data/yara/CAPE/DanaBot.yar deleted file mode 100644 index 5d79572829f..00000000000 --- a/data/yara/CAPE/DanaBot.yar +++ /dev/null @@ -1,13 +0,0 @@ -rule DanaBot -{ - meta: - author = "kevoreilly" - description = "DanaBot decrypt function" - cape_type = "DanaBot Payload" - - strings: - $decrypt1 = {83 FA 20 88 CD 7C 3F 66 89 08 66 89 48 02 66 89 48 04 66 89 48 06 83 EA 10 DD 00 DD 14 02 DD 54 02 08 89 C1 83 E1 07 83 E9 08 29 C8 01 CA 01 D0 F7 DA DD 14 02 DD 54 02 08 83 C2 10 7C F4 DD C0 D9 F7 C3} - - condition: - uint16(0) == 0x5A4D and any of them -} From a62d5f4ae1370890b20dad2fd61fc0a737b02592 Mon Sep 17 00:00:00 2001 From: doomedraven Date: Sat, 18 Jan 2020 20:13:55 +0100 Subject: [PATCH 39/67] Update changelog.md --- changelog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/changelog.md b/changelog.md index 4ce0aef56fe..5a75f43e455 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,5 @@ ### [17-01-2020] -* Bson data compression to remove api spamming, [details](https://github.com/ctxis/CAPE/pull/470), thanks @mabj +* Bson data compression to remove api spamming, [details](http://security.neurolabs.club/2019/12/inline-loop-detection-for-compressing.html), thanks @mabj * Many bug fixes in cleaners.py, thanks @Enzok ### [14-01-2020] From eabd2637f6103f8db8a49ec7ce503b39b56057f4 Mon Sep 17 00:00:00 2001 From: Will Metcalf Date: Mon, 20 Jan 2020 15:45:30 +0000 Subject: [PATCH 40/67] Fix for behavior module behaving badly. --- modules/processing/behavior.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/processing/behavior.py b/modules/processing/behavior.py index a9984044646..a89f38dfd6f 100644 --- a/modules/processing/behavior.py +++ b/modules/processing/behavior.py @@ -349,8 +349,8 @@ class Processes: def __init__(self, logs_path, task): """@param logs_path: logs path.""" - self._logs_path = logs_path self.task = task + self._logs_path = logs_path self.options = dict((value.strip() for value in option.split("=", 1)) for option in self.task["options"].split(",") if option and '=' in option) def run(self): @@ -1210,7 +1210,7 @@ def run(self): @return: results dict. """ behavior = {} - behavior["processes"] = Processes(self.logs_path).run() + behavior["processes"] = Processes(self.logs_path,self.task).run() instances = [ Anomaly(), From c824da60aedab9780332e75ecf980dba31587920 Mon Sep 17 00:00:00 2001 From: Will Metcalf Date: Mon, 20 Jan 2020 15:59:42 +0000 Subject: [PATCH 41/67] ClamAV results are now a list. As we can now return multiple results from a single sample. --- lib/cuckoo/core/plugins.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/lib/cuckoo/core/plugins.py b/lib/cuckoo/core/plugins.py index fb4b960c3ca..06db8213652 100644 --- a/lib/cuckoo/core/plugins.py +++ b/lib/cuckoo/core/plugins.py @@ -351,10 +351,14 @@ def run(self): self.results["malfamily_tag"] = "VirusTotal" # fall back to ClamAV detection - if not family and self.results["info"]["category"] == "file" and "clamav" in self.results.get("target", {}).get("file", {}) and self.results["target"]["file"]["clamav"] and self.results["target"]["file"]["clamav"].startswith("Win.Trojan."): - words = re.findall(r"[A-Za-z0-9]+", self.results["target"]["file"]["clamav"]) - family = words[2] - self.results["malfamily_tag"] = "ClamAV" + if not family and self.results["info"]["category"] == "file" and "clamav" in self.results.get("target", {}).get("file", {}) and self.results["target"]["file"]["clamav"]: + for detection in self.results["target"]["file"]["clamav"]: + if family: + break + elif detection.startswith("Win.Trojan."): + words = re.findall(r"[A-Za-z0-9]+", detection) + family = words[2] + self.results["malfamily_tag"] = "ClamAV" if self.results.get("cape", False): self.results["malfamily"] = self.results["cape"] From 73599c4637fce952297e654512d9a8f296e4632f Mon Sep 17 00:00:00 2001 From: Will Metcalf Date: Mon, 20 Jan 2020 19:49:29 +0000 Subject: [PATCH 42/67] Proper memdump freespace fix for non-ramfs mode. --- lib/cuckoo/core/scheduler.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/cuckoo/core/scheduler.py b/lib/cuckoo/core/scheduler.py index 54b2a267f48..b8af1864157 100644 --- a/lib/cuckoo/core/scheduler.py +++ b/lib/cuckoo/core/scheduler.py @@ -345,8 +345,11 @@ def launch_analysis(self): if self.cfg.cuckoo.memory_dump or self.task.memory: try: dump_path = get_memdump_path(self.task.id) - free_space_monitor(RAM=True) - machinery.dump_memory(self.machine.label, dump_path) + need_space, space_available = free_space_monitor(os.path.dirname(dump_path), return_value=True) + if need_space: + log.error("Not enough free disk space! Could not dump ram (Only %d MB!)", space_available) + else: + machinery.dump_memory(self.machine.label, dump_path) except NotImplementedError: log.error("The memory dump functionality is not available " "for the current machine manager.") From ab8c4cb2d522414f34798ba407a63f24b19847f4 Mon Sep 17 00:00:00 2001 From: DoomedRaven Date: Tue, 21 Jan 2020 21:08:21 +0100 Subject: [PATCH 43/67] update --- modules/processing/CAPE.py | 7 +++---- systemd/cuckoo-wsgi.service | 4 ++-- systemd/cuckoo.service | 4 +--- systemd/suricata-update.service | 2 +- web/templates/analysis/search.html | 2 +- 5 files changed, 8 insertions(+), 11 deletions(-) diff --git a/modules/processing/CAPE.py b/modules/processing/CAPE.py index 3e396bb9f2b..04764ccc98e 100644 --- a/modules/processing/CAPE.py +++ b/modules/processing/CAPE.py @@ -23,7 +23,6 @@ import re import hashlib import imp -import datetime from lib.cuckoo.common.abstracts import Processing from lib.cuckoo.common.constants import CUCKOO_ROOT @@ -440,14 +439,14 @@ def process_file(self, file_path, CAPE_output, append_file, metadata={}): "payload", "config", "loader" - ] + ] try: for type in extraction_types: if type in hit["meta"]["cape_type"].lower(): file_info["cape_type"] = hit["meta"]["cape_type"] cape_name = hit["name"].replace('_', ' ') - except: - pass + except Exception as e: + print(e) type_strings = file_info["type"].split() if "-bit" not in file_info["cape_type"]: if type_strings[0] in ("PE32+", "PE32"): diff --git a/systemd/cuckoo-wsgi.service b/systemd/cuckoo-wsgi.service index 04268e3675a..d9f4f5a2a78 100644 --- a/systemd/cuckoo-wsgi.service +++ b/systemd/cuckoo-wsgi.service @@ -5,9 +5,9 @@ Wants=cuckoo.service After=cuckoo.service [Service] -WorkingDirectory=/opt/CAPE/web +WorkingDirectory=/opt/CAPEv2/web ExecStart=/usr/bin/python3 manage.py runserver 0.0.0.0:8000 -#ExecStart=/opt/CAPE/venv/bin/gunicorn -b 127.0.0.1:8000 web.wsgi +#ExecStart=/opt/CAPEv2/venv/bin/gunicorn -b 127.0.0.1:8000 web.wsgi User=cuckoo Group=cuckoo Restart=always diff --git a/systemd/cuckoo.service b/systemd/cuckoo.service index 2b60d8bb623..e401437dfd1 100644 --- a/systemd/cuckoo.service +++ b/systemd/cuckoo.service @@ -1,13 +1,11 @@ [Unit] Description=Cuckoo Documentation=https://github.com/kevoreilly/CAPEv2 -Wants=cuckoo-cuckoo-processor.service -After=cuckoo-cuckoo-processor.service [Service] WorkingDirectory=/opt/CAPEv2/ ExecStart=/usr/bin/python3 cuckoo.py -#ExecStart=/opt/CAPE/venv/bin/python3 /opt/CAPE/cuckoo.py +#ExecStart=/opt/CAPEv2/venv/bin/python3 /opt/CAPEv2/cuckoo.py User=cuckoo Group=cuckoo Restart=always diff --git a/systemd/suricata-update.service b/systemd/suricata-update.service index baf9c4dcb9c..dad62b72d80 100644 --- a/systemd/suricata-update.service +++ b/systemd/suricata-update.service @@ -5,7 +5,7 @@ Description=suricata-update User=root Group=root Type=oneshot -ExecStart=/opt/CAPE/venv/bin/suricata-update +ExecStart=/opt/CAPEv2/venv/bin/suricata-update [Install] WantedBy=multi-user.target diff --git a/web/templates/analysis/search.html b/web/templates/analysis/search.html index 322c0921a3f..561812a9962 100644 --- a/web/templates/analysis/search.html +++ b/web/templates/analysis/search.html @@ -8,7 +8,7 @@

    From 9aa9dab02d1411fc8890b638f1843b31d8bd0ea9 Mon Sep 17 00:00:00 2001 From: me <7831008+enzok@users.noreply.github.com> Date: Tue, 21 Jan 2020 15:56:34 -0500 Subject: [PATCH 44/67] 1. Update Suricata file extraction to version 2 2. Fix compressresults.py to handle byte values in json --- modules/processing/behavior.py | 2 +- modules/processing/suricata.py | 191 ++++++++++-------- modules/reporting/compressresults.py | 2 +- .../analysis/network/_suricata_files.html | 14 +- 4 files changed, 110 insertions(+), 99 deletions(-) diff --git a/modules/processing/behavior.py b/modules/processing/behavior.py index a89f38dfd6f..61e369dd37a 100644 --- a/modules/processing/behavior.py +++ b/modules/processing/behavior.py @@ -1210,7 +1210,7 @@ def run(self): @return: results dict. """ behavior = {} - behavior["processes"] = Processes(self.logs_path,self.task).run() + behavior["processes"] = Processes(self.logs_path, self.task).run() instances = [ Anomaly(), diff --git a/modules/processing/suricata.py b/modules/processing/suricata.py index 9c9dd7b8722..ebd504e3618 100644 --- a/modules/processing/suricata.py +++ b/modules/processing/suricata.py @@ -4,7 +4,7 @@ from __future__ import absolute_import import datetime -import json +import simplejson as json import logging import os import shutil @@ -63,29 +63,22 @@ def run(self): SURICATA_FILE_BUFFER = self.options.get("buffer", 8192) Z7_PATH = self.options.get("7zbin", None) FILES_ZIP_PASS = self.options.get("zippass", None) - SURICATA_FILE_COPY_DST_DIR = self.options.get("file_copy_dest_dir", None) - SURICATA_FILE_COPY_MAGIC_RE = self.options.get("file_magic_re", None) - if SURICATA_FILE_COPY_MAGIC_RE: - try: - SURICATA_FILE_COPY_MAGIC_RE = re.compile(SURICATA_FILE_COPY_MAGIC_RE) - except: - log.warning("Failed to compile suricata copy magic RE" % (SURICATA_FILE_COPY_MAGIC_RE)) - SURICATA_FILE_COPY_MAGIC_RE = None + # Socket SURICATA_SOCKET_PATH = self.options.get("socket_file", None) # Command Line SURICATA_BIN = self.options.get("bin", None) - suricata = {} - suricata["alerts"]=[] - suricata["tls"]=[] - suricata["perf"]=[] - suricata["files"]=[] - suricata["http"]=[] - suricata["dns"]=[] - suricata["ssh"]=[] - suricata["file_info"]=[] + suricata = dict() + suricata["alerts"] = [] + suricata["tls"] = [] + suricata["perf"] = [] + suricata["files"] = [] + suricata["http"] = [] + suricata["dns"] = [] + suricata["ssh"] = [] + suricata["fileinfo"] = [] suricata["eve_log_full_path"] = None suricata["alert_log_full_path"] = None @@ -130,10 +123,10 @@ def run(self): pass if not os.path.exists(SURICATA_CONF): - log.warning("Unable to Run Suricata: Conf File %s Does Not Exist" % (SURICATA_CONF)) + log.warning("Unable to Run Suricata: Conf File {} Does Not Exist".format(SURICATA_CONF)) return suricata["alerts"] if not os.path.exists(self.pcap_path): - log.warning("Unable to Run Suricata: Pcap file %s Does Not Exist" % (self.pcap_path)) + log.warning("Unable to Run Suricata: Pcap file {} Does Not Exist".format(self.pcap_path)) return suricata["alerts"] # Add to this if you wish to ignore any SIDs for the suricata alert logs @@ -155,14 +148,14 @@ def run(self): #from suricatasc import SuricataSC from lib.cuckoo.common.suricatasc import SuricataSC except Exception as e: - log.warning("Failed to import suricatasc lib %s" % (e)) + log.warning("Failed to import suricatasc lib {}".format(e)) return suricata loopcnt = 0 maxloops = 24 loopsleep = 5 - args = {} + args = dict() args["filename"] = self.pcap_path args["output-dir"] = self.logs_path @@ -171,36 +164,39 @@ def run(self): suris.connect() suris.send_command("pcap-file",args) except Exception as e: - log.warning("Failed to connect to socket and send command %s: %s" % (SURICATA_SOCKET_PATH, e)) + log.warning("Failed to connect to socket and send command {}: {}".format(SURICATA_SOCKET_PATH, e)) return suricata while loopcnt < maxloops: try: pcap_flist = suris.send_command("pcap-file-list") current_pcap = suris.send_command("pcap-current") - log.debug("pcapfile list: %s current pcap: %s" % (pcap_flist, current_pcap)) + log.debug("pcapfile list: {} current pcap: {}".format(pcap_flist, current_pcap)) - if self.pcap_path not in pcap_flist["message"]["files"] and current_pcap["message"] != self.pcap_path: + if self.pcap_path not in pcap_flist["message"]["files"] and \ + current_pcap["message"] != self.pcap_path: log.debug("Pcap not in list and not current pcap lets assume it's processed") break else: loopcnt = loopcnt + 1 time.sleep(loopsleep) except Exception as e: - log.warning("Failed to get pcap status breaking out of loop %s" % (e)) + log.warning("Failed to get pcap status breaking out of loop {}".format(e)) break if loopcnt == maxloops: - log.warning("Loop timeout of %ssec occured waiting for file %s to finish processing" % (maxloops * loopsleep, pcapfile)) + logstr = "Loop timeout of {} sec occurred waiting for file {} to finish processing" + log.warning(logstr.format(maxloops * loopsleep, current_pcap)) return suricata elif SURICATA_RUNMODE == "cli": if not os.path.exists(SURICATA_BIN): - log.warning("Unable to Run Suricata: Bin File %s Does Not Exist" % (SURICATA_CONF)) + log.warning("Unable to Run Suricata: Bin File {} Does Not Exist".format(SURICATA_CONF)) return suricata["alerts"] - cmd = "%s -c %s -k none -l %s -r %s" % (SURICATA_BIN,SURICATA_CONF,self.logs_path,self.pcap_path) - ret,stdout,stderr = self.cmd_wrapper(cmd) + cmdstr = "{} -c {} -k none -l {} -r {}" + cmd = cmdstr.format(SURICATA_BIN, SURICATA_CONF, self.logs_path, self.pcap_path) + ret, stdout, stderr = self.cmd_wrapper(cmd) if ret != 0: - log.warning("Suricata returned a Exit Value Other than Zero %s" % (stderr)) - return suricata + log.warning("Suricata returned a Exit Value Other than Zero {}".format(stderr)) + return suricata else: log.warning("Unknown Suricata Runmode") @@ -221,12 +217,13 @@ def run(self): if not datalist: log.warning("Suricata: Failed to find usable Suricata log file") + parsed_files = [] for data in datalist: for line in data.splitlines(): try: parsed = json.loads(line) except: - log.warning("Suricata: Failed to parse line as json" % (line)) + log.warning("Suricata: Failed to parse line {} as json".format(line)) continue if 'event_type' in parsed: @@ -274,8 +271,10 @@ def run(self): hlog["dstport"] = parsed["dest_port"] hlog["dstip"] = parsed["dest_ip"] hlog["timestamp"] = parsed["timestamp"].replace("T", " ") - keyword = ("uri", "length", "hostname", "status", "http_method", "contenttype", "ua", "referrer") - keyword_suri = ("url", "length", "hostname", "status", "http_method", "http_content_type", "http_user_agent", "http_refer") + keyword = ("uri", "length", "hostname", "status", "http_method", "contenttype", "ua", + "referrer") + keyword_suri = ("url", "length", "hostname", "status", "http_method", "http_content_type", + "http_user_agent", "http_refer") for key, key_s in zip(keyword, keyword_suri): try: hlog[key] = parsed["http"].get(key_s, "None") @@ -299,62 +298,76 @@ def run(self): suricata["ssh"].append(parsed) elif parsed["event_type"] == "dns": suricata["dns"].append(parsed) - - if os.path.exists(SURICATA_FILE_LOG_FULL_PATH): - suricata["file_log_full_path"] = SURICATA_FILE_LOG_FULL_PATH - f = open(SURICATA_FILE_LOG_FULL_PATH, "rb").readlines() - for l in f: - try: - d = json.loads(l) - except: - log.warning("failed to load JSON from file log") - continue - # Some log entries do not have an id - if "id" not in d: - continue - src_file = "%s/file.%s" % (SURICATA_FILES_DIR_FULL_PATH,d["id"]) - if os.path.exists(src_file): - if SURICATA_FILE_COPY_MAGIC_RE and SURICATA_FILE_COPY_DST_DIR and os.path.exists(SURICATA_FILE_COPY_DST_DIR): + elif parsed["event_type"] == "fileinfo": + flog = dict() + flog["http_host"] = parsed.get("http", {}).get("hostname", "") + flog["http_uri"] = parsed.get("http", {}).get("url", "") + flog["http_referer"] = parsed.get("http", {}).get("referer", "") + flog["http_user_agent"] = parsed.get("http", {}).get("http_user_agent", "") + flog["protocol"] = parsed.get("proto", "") + flog["magic"] = parsed.get("fileinfo", {}).get("magic", "") + flog["size"] = parsed.get("fileinfo", {}).get("size", "") + flog["stored"] = parsed.get("fileinfo", {}).get("stored", "") + flog["sha256"] = parsed.get("fileinfo", {}).get("sha256", "") + flog["md5"] = parsed.get("fileinfo", {}).get("md5", "") + flog["filename"] = parsed.get("fileinfo", {}).get("filename", "") + if "/" in flog["filename"]: + flog["filename"] = flog["filename"].split("/")[-1] + parsed_files.append(flog) + + if parsed_files: + for sfile in parsed_files: + if sfile.get("stored", False): + filename = sfile["sha256"] + src_file = "{}/{}/{}".format(SURICATA_FILES_DIR_FULL_PATH, filename[0:2], filename) + dst_file = "{}/{}".format(SURICATA_FILES_DIR_FULL_PATH, filename) + if os.path.exists(src_file): try: - m = re.search(SURICATA_FILE_COPY_MAGIC_RE,d["magic"]) - if m: - dst_file = "%s/%s" % (SURICATA_FILE_COPY_DST_DIR,d["md5"]) - shutil.copy2(src_file,dst_file) - log.warning("copied %s to %s" % (src_file,dst_file)) - except Exception as e: - log.warning("Unable to copy suricata file: %s" % e) - file_info = File(file_path=src_file).get_all() - texttypes = [ - "ASCII", - "Windows Registry text", - "XML document text", - "Unicode text", - ] - readit = False - for texttype in texttypes: - if texttype in file_info["type"]: - readit = True + shutil.move(src_file, dst_file) + except OSError as e: + log.warning("Unable to move suricata file: {}".format(e)) break - if readit: - with open(file_info["path"], "rb") as drop_open: - filedata = drop_open.read(SURICATA_FILE_BUFFER + 1) - if len(filedata) > SURICATA_FILE_BUFFER: - file_info["data"] = convert_to_printable(filedata[:SURICATA_FILE_BUFFER] + " ") - else: - file_info["data"] = convert_to_printable(filedata) - d["file_info"] = file_info - if "/" in d["filename"]: - d["filename"] = d["filename"].split("/")[-1] - suricata["files"].append(d) - else: - log.warning("Suricata: Failed to find file log at %s" % (SURICATA_FILE_LOG_FULL_PATH)) - - if SURICATA_FILES_DIR_FULL_PATH and os.path.exists(SURICATA_FILES_DIR_FULL_PATH) and Z7_PATH and os.path.exists(Z7_PATH): - # /usr/bin/7z a -pinfected -y files.zip files files-json.log - cmd = "cd %s && %s a -p%s -y files.zip %s %s" % (self.logs_path,Z7_PATH,FILES_ZIP_PASS,SURICATA_FILE_LOG,SURICATA_FILES_DIR) - ret,stdout,stderr = self.cmd_wrapper(cmd) - if ret != 0: - log.warning("Suricata: Failed to create %s/files.zip" % (self.logs_path)) + texttypes = [ + "ASCII", + "Windows Registry text", + "XML document text", + "Unicode text", + ] + readit = False + file_info = File(file_path=dst_file).get_all() + for texttype in texttypes: + if texttype in file_info["type"]: + readit = True + break + if readit: + with open(file_info["path"], "r") as drop_open: + filedata = drop_open.read(SURICATA_FILE_BUFFER + 1) + if len(filedata) > SURICATA_FILE_BUFFER: + file_info["data"] = convert_to_printable( + filedata[:SURICATA_FILE_BUFFER] + " ") + else: + file_info["data"] = convert_to_printable(filedata) + sfile["file_info"] = file_info + suricata["files"].append(sfile) + with open(SURICATA_FILE_LOG_FULL_PATH, "w") as drop_log: + drop_log.write(json.dumps(suricata["files"], indent=4)) + + # Cleanup file subdirectories left behind by messy Suricata + for d in [dirpath for (dirpath, dirnames, filenames) in os.walk(SURICATA_FILES_DIR_FULL_PATH) + if len(dirnames) == 0 and len(filenames) == 0]: + try: + shutil.rmtree(d) + except OSError as e: + log.warning("Unable to delete suricata file subdirectories: {}".format(e)) + + if SURICATA_FILES_DIR_FULL_PATH and os.path.exists(SURICATA_FILES_DIR_FULL_PATH) and Z7_PATH \ + and os.path.exists(Z7_PATH): + # /usr/bin/7z a -pinfected -y files.zip files-json.log files + cmdstr = "cd {} && {} a -p{} -y files.zip {} {}" + cmd = cmdstr.format(self.logs_path, Z7_PATH, FILES_ZIP_PASS, SURICATA_FILE_LOG, SURICATA_FILES_DIR) + ret, stdout, stderr = self.cmd_wrapper(cmd) + if ret > 1: + log.warning("Suricata: Failed to create {}/files.zip - Error {}".format(self.logs_path, ret)) suricata["alerts"] = self.sort_by_timestamp(suricata["alerts"]) suricata["http"] = self.sort_by_timestamp(suricata["http"]) diff --git a/modules/reporting/compressresults.py b/modules/reporting/compressresults.py index 9ec40e53493..4f85bf891c0 100644 --- a/modules/reporting/compressresults.py +++ b/modules/reporting/compressresults.py @@ -3,7 +3,7 @@ # See the file 'docs/LICENSE' for copying permission. from __future__ import absolute_import -import json +import simplejson as json from bson import ObjectId from bson.binary import Binary import zlib diff --git a/web/templates/analysis/network/_suricata_files.html b/web/templates/analysis/network/_suricata_files.html index 8fe4ade8356..013558356fe 100644 --- a/web/templates/analysis/network/_suricata_files.html +++ b/web/templates/analysis/network/_suricata_files.html @@ -45,7 +45,7 @@ MD5 - {{file.md5}} + {{file.md5}} {% if file.moloch_md5_url %} [MLCH] {% endif %} @@ -57,7 +57,7 @@ SHA256 - {{file.file_info.sha256}} + {{file.sha256}} {% if file.moloch_sha256_url %} [MLCH] {% endif %} @@ -112,21 +112,19 @@ Search for Analysis {% endif %} - {% if file.id %} - Download + Download {% if file.file_info.data %} -  Display Text +  Display Text {% endif %} {% if file.file_info.data %} - +
    {{file.file_info.data}}
    - {% endif %} - {% endif %} + {% endif %}

    ?Hyj9(9PWbG_FonCqF0_#+$+=R#W&pjA8pOA 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 GRsRP=w}P?& diff --git a/analyzer/windows/dll/capemon_x64.dll b/analyzer/windows/dll/capemon_x64.dll index db290e0763d33694e8cdeef824b4992b4139e5b1..878c9e51658e79cdbc0af5ff28f840fea56811d4 100755 GIT binary patch delta 179710 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

    {% endfor %} From 806db5ec6998ab133168defae05f18d93f94bdf1 Mon Sep 17 00:00:00 2001 From: DoomedRaven Date: Tue, 21 Jan 2020 22:02:20 +0100 Subject: [PATCH 45/67] remove summary from compression to not break searches --- modules/reporting/compressresults.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/reporting/compressresults.py b/modules/reporting/compressresults.py index 9ec40e53493..ba049bb4f2e 100644 --- a/modules/reporting/compressresults.py +++ b/modules/reporting/compressresults.py @@ -36,7 +36,7 @@ def run(self, results): results[keyword] = Binary(compressed_data) # compress behaviour analysis (enhanced & summary) - for keyword in ("enhanced", "summary"): + for keyword in ("enhanced"): if keyword in results["behavior"]: compressed_behavior_enhanced = zlib.compress(JSONEncoder().encode(results["behavior"][keyword]).encode('utf8')) results["behavior"][keyword] = Binary(compressed_behavior_enhanced) From bfeb4c7ca1f10d035656d96d37da24de06c86ec7 Mon Sep 17 00:00:00 2001 From: doomedraven Date: Wed, 22 Jan 2020 09:17:17 +0100 Subject: [PATCH 46/67] Update web_utils.py --- lib/cuckoo/common/web_utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/cuckoo/common/web_utils.py b/lib/cuckoo/common/web_utils.py index 752e816cabd..0b23a52b8d2 100644 --- a/lib/cuckoo/common/web_utils.py +++ b/lib/cuckoo/common/web_utils.py @@ -107,7 +107,7 @@ def fix_section_permission(path): log.info("[-] Missed dependency pefile") -# Submission hooks to set options based on some naming patrons +# Submission hooks to set options based on some naming patterns def recon(filename, orig_options, timeout, enforce_timeout): filename = filename.lower() if not isinstance(filename, str): From c1032d65a99af734747b8336be524d7832e3b892 Mon Sep 17 00:00:00 2001 From: DoomedRaven Date: Wed, 22 Jan 2020 12:07:18 +0100 Subject: [PATCH 47/67] object2list --- lib/cuckoo/core/plugins.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/cuckoo/core/plugins.py b/lib/cuckoo/core/plugins.py index 06db8213652..d993a5095ae 100644 --- a/lib/cuckoo/core/plugins.py +++ b/lib/cuckoo/core/plugins.py @@ -650,6 +650,8 @@ def __init__(self, task, results, reprocess=False): # remove unwanted/duplicate information from reporting for process in results["behavior"]["processes"]: process["calls"].begin_reporting() + # required to convert object to list + process["calls"] = list(process["calls"]) self.results = results self.analysis_path = os.path.join(CUCKOO_ROOT, "storage", "analyses", str(task["id"])) From 22931108cfdccc17682db056522b069f117f87c9 Mon Sep 17 00:00:00 2001 From: doomedraven Date: Wed, 22 Jan 2020 14:32:03 +0100 Subject: [PATCH 48/67] Update binGraph.py --- lib/cuckoo/common/graphs/binGraph/binGraph.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/cuckoo/common/graphs/binGraph/binGraph.py b/lib/cuckoo/common/graphs/binGraph/binGraph.py index 67254defd43..0bd37e111c5 100644 --- a/lib/cuckoo/common/graphs/binGraph/binGraph.py +++ b/lib/cuckoo/common/graphs/binGraph/binGraph.py @@ -33,7 +33,7 @@ # # Setup logging format #logging.basicConfig(stream=sys.stderr, format='%(name)s | %(levelname)s | %(message)s') log = logging.getLogger('binGraph') -log.setLevel(logging.DEBUG) +log.setLevel(logging.INFO) # ### Helper functions From 8cff0f8c97f3c7c9553cfb861392d64b845c78c2 Mon Sep 17 00:00:00 2001 From: doomedraven Date: Wed, 22 Jan 2020 21:44:37 +0100 Subject: [PATCH 49/67] Update cape_utils.py --- lib/cuckoo/common/cape_utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/cuckoo/common/cape_utils.py b/lib/cuckoo/common/cape_utils.py index 9757cd1cfac..243929dee57 100644 --- a/lib/cuckoo/common/cape_utils.py +++ b/lib/cuckoo/common/cape_utils.py @@ -36,7 +36,7 @@ HAS_MALWARECONFIGS = False print("Missed RATDecoders -> pip3 install git+https://github.com/kevthehermit/RATDecoders") -cape_decoders = os.path.join(CUCKOO_ROOT, "modules", "processing", "parsers", "malwareconfig") +cape_decoders = os.path.join(CUCKOO_ROOT, "modules", "processing", "parsers", "CAPE") CAPE_DECODERS = [ os.path.basename(decoder)[:-3] for decoder in glob.glob(cape_decoders + "/[!_]*.py") From d8c1a35dc69f99ded584a0181e23fd4c1507c275 Mon Sep 17 00:00:00 2001 From: ditekshen Date: Thu, 23 Jan 2020 18:45:56 +0000 Subject: [PATCH 50/67] Add CypherIT/Frenchy shellcode packer signature --- modules/signatures/cypherit_mutex.py | 41 ++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 modules/signatures/cypherit_mutex.py diff --git a/modules/signatures/cypherit_mutex.py b/modules/signatures/cypherit_mutex.py new file mode 100644 index 00000000000..3ae7c8678f5 --- /dev/null +++ b/modules/signatures/cypherit_mutex.py @@ -0,0 +1,41 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class CypherITMutexes(Signature): + name = "cypherit_mutexes" + description = "Creates known CypherIT/Frenchy Shellcode mutexes" + severity = 3 + categories = ["trojan"] + families = ["AgentTesla", "HawkEye", "Nanocore", "Formbook", "Remcos", "Njrat", "Azorult", "Fareit", "Lokibot", "Predator"] + authors = ["ditekshen"] + minimum = "0.5" + ttp = ["T1045"] + + def run(self): + indicators = [ + "frenchy_shellcode_\d+$", + "Startup_shellcode_\d+$", + ] + + for indicator in indicators: + match = self.check_mutex(pattern=indicator, regex=True, all=True) + if match: + for mut in match: + self.data.append({"mutex": mut}) + return True + + return False \ No newline at end of file From 2956918bd83440877ace30925cbfc81ebf68a135 Mon Sep 17 00:00:00 2001 From: ditekshen Date: Thu, 23 Jan 2020 19:15:21 +0000 Subject: [PATCH 51/67] Add signature to detect malware encryption --- modules/signatures/malware_data_encryption.py | 115 ++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 modules/signatures/malware_data_encryption.py diff --git a/modules/signatures/malware_data_encryption.py b/modules/signatures/malware_data_encryption.py new file mode 100644 index 00000000000..1ad41a3baf4 --- /dev/null +++ b/modules/signatures/malware_data_encryption.py @@ -0,0 +1,115 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class EnryptDataAgentTeslaHTTP(Signature): + name = "encrypt_data_agenttesla_http" + description = "AgentTesla HTTP vairant keylogger detected encrypting data potentially prior to exfiltrating it" + severity = 3 + categories = ["keylogger", "infostealer"] + families = ["AgentTesla"] + authors = ["ditekshen"] + minimum = "0.5" + ttp = ["T1022"] + evented = True + + def __init__(self, *args, **kwargs): + Signature.__init__(self, *args, **kwargs) + self.match = False + + filter_apinames = set(["CryptEncrypt"]) + + def on_call(self, call, process): + buff = self.get_argument(call, "Buffer") + if buff: + if "type=" in buff and "hwid=" in buff and "pcname=" in buff: + self.match = True + self.data.append({"data": buff}) + + def on_complete(self): + return self.match + +class EnryptDataNanoCore(Signature): + name = "encrypt_data_nanocore" + description = "NanoCore keylogger detected encrypting data potentially prior to exfiltrating it" + severity = 3 + categories = ["keylogger", "infostealer"] + families = ["NanoCore"] + authors = ["ditekshen"] + minimum = "0.5" + ttp = ["T1022"] + evented = True + + def __init__(self, *args, **kwargs): + Signature.__init__(self, *args, **kwargs) + self.username = str() + self.hostname = str() + self.match = False + + filter_apinames = set(["CryptEncrypt", "GetComputerNameW", "GetUserNameW"]) + + def on_call(self, call, process): + if call["api"] == "GetComputerNameW": + self.hostname = self.get_argument(call, "ComputerName") + if call["api"] == "GetUserNameW": + self.username = self.get_argument(call, "Name") + if call["api"] == "CryptEncrypt": + buff = self.get_argument(call, "Buffer") + if buff: + if buff.startswith("\\x00\\x00\\x00\\x00\\x12") and "\\x0c\\x07" in buff: + if self.hostname and self.username: + combo = self.hostname + "\\" + self.username + if combo in buff: + self.match == True + + def on_complete(self): + return self.match + +class EnryptDataAgentTeslaHTTPT2(Signature): + name = "encrypt_data_agentteslat2_http" + description = "AgentTesla v2 HTTP vairant keylogger detected encrypting data potentially prior to exfiltrating it" + severity = 3 + categories = ["keylogger", "infostealer"] + families = ["Predator"] + authors = ["ditekshen"] + minimum = "0.5" + ttp = ["T1022"] + evented = True + + def __init__(self, *args, **kwargs): + Signature.__init__(self, *args, **kwargs) + self.username = str() + self.hostname = str() + self.match = False + + filter_apinames = set(["CryptEncrypt", "GetComputerNameW", "GetUserNameW"]) + + def on_call(self, call, process): + if call["api"] == "GetComputerNameW": + self.hostname = self.get_argument(call, "ComputerName") + if call["api"] == "GetUserNameW": + self.username = self.get_argument(call, "Name") + if call["api"] == "CryptEncrypt": + buff = self.get_argument(call, "Buffer") + if buff: + if "22afd24bbac47acb3f315177181b7d3cb7cd0270291f14b3" in buff: + if self.hostname and self.username: + combo = self.hostname + "/" + self.username + if combo in buff: + self.match == True + + def on_complete(self): + return self.match From 1de4ab7e861d2a071964f0df2f36e3ea8a0b520d Mon Sep 17 00:00:00 2001 From: ditekshen Date: Thu, 23 Jan 2020 20:09:10 +0000 Subject: [PATCH 52/67] Add detectio for anonymous temporary file service connectivity --- .../signatures/network_temp_file_storage.py | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 modules/signatures/network_temp_file_storage.py diff --git a/modules/signatures/network_temp_file_storage.py b/modules/signatures/network_temp_file_storage.py new file mode 100644 index 00000000000..1d4a35ec221 --- /dev/null +++ b/modules/signatures/network_temp_file_storage.py @@ -0,0 +1,48 @@ +# Copyright (C) 2019 ditekshen +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +from lib.cuckoo.common.abstracts import Signature + +class NetworkTempFileService(Signature): + name = "network_temp_file_storage" + description = "Queries or connects to anonymous/temporary file storage service" + severity = 2 + categories = ["network"] + authors = ["ditekshen"] + minimum = "1.2" + + def run(self): + domain_indicators = [ + "plik.root.gg", + "gp.tt", + "wetransfer.com", + "send-anywhere.com", + "sendgb.com", + "send.firefox.com", + "volafile.org", + "uploadfiles.io", + "sendpace.com", + "filedropper.com", + "myairbridge.com" + ] + + found_matches = False + + for indicator in domain_indicators: + if self.check_domain(pattern=indicator): + self.data.append({"domain" : indicator}) + found_matches = True + + return found_matches \ No newline at end of file From 37f3c7e6a8eafa251d0b6f23d001edd63818b260 Mon Sep 17 00:00:00 2001 From: DoomedRaven Date: Fri, 24 Jan 2020 09:31:56 +0100 Subject: [PATCH 53/67] small fix --- analyzer/windows/analyzer.py | 4 +--- modules/signatures/windows_utilities.py | 4 ++-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/analyzer/windows/analyzer.py b/analyzer/windows/analyzer.py index fce22395258..9241007dc81 100644 --- a/analyzer/windows/analyzer.py +++ b/analyzer/windows/analyzer.py @@ -808,9 +808,7 @@ def dump_file(self, filepath, metadata="", pids=False, category="files"): log.info("Error dumping file from path \"%s\": %s", filepath, e) return - #filename = "%s_%s" % (sha256[:16], os.path.basename(filepath)) - filename = os.path.basename(filepath) - upload_path = os.path.join(category, filename) + upload_path = os.path.join(category, sha256) try: upload_to_host( diff --git a/modules/signatures/windows_utilities.py b/modules/signatures/windows_utilities.py index df62d9ebdd3..6bd447f8b62 100644 --- a/modules/signatures/windows_utilities.py +++ b/modules/signatures/windows_utilities.py @@ -243,7 +243,7 @@ class WMICCommandSuspicious(Signature): evented = True def run(self): - arguments = [ + self.arguments = [ "antivirusproduct", "baseboard", "bios", @@ -276,7 +276,7 @@ def run(self): for argument in self.arguments: if argument in lower: ret = True - self.data.append({"command" : cmdline}) + self.data.append({"command": cmdline}) return ret From eebbd32d0dd22a1d9cb0790e36e4c74dc3ca8102 Mon Sep 17 00:00:00 2001 From: enzo <7831008+enzok@users.noreply.github.com> Date: Fri, 24 Jan 2020 08:11:17 -0500 Subject: [PATCH 54/67] Update cape_utils.py --- lib/cuckoo/common/cape_utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/cuckoo/common/cape_utils.py b/lib/cuckoo/common/cape_utils.py index 243929dee57..c9b82648202 100644 --- a/lib/cuckoo/common/cape_utils.py +++ b/lib/cuckoo/common/cape_utils.py @@ -44,7 +44,7 @@ for name in CAPE_DECODERS: try: - file, pathname, description = imp.find_module(name, [CAPE_DECODERS]) + file, pathname, description = imp.find_module(name, [cape_decoders]) module = imp.load_module(name, file, pathname, description) malware_parsers[name] = module except (ImportError, IndexError) as e: From 2e18634777f47bb90e8d19da889bc466525bbd36 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 24 Jan 2020 19:45:42 +0000 Subject: [PATCH 55/67] REvil signature update --- data/yara/CAPE/REvil.yar | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/data/yara/CAPE/REvil.yar b/data/yara/CAPE/REvil.yar index e2ba109fa44..0cadc304364 100644 --- a/data/yara/CAPE/REvil.yar +++ b/data/yara/CAPE/REvil.yar @@ -5,12 +5,15 @@ rule REvil description = "REvil Payload" cape_type = "REvil Payload" strings: - $RE1 = "expand 32-byte kexpand 16-byte k" ascii fullword - $RE2 = "sysshadow" ascii fullword - $RE3 = "SCROLLBAR" ascii fullword - $RE4 = "msctfime ui" ascii fullword - $RE5 = "\\BaseNamedObjects\\%S" wide fullword - $decode = {33 D2 8A 9C 3D FC FE FF FF 8B C7 0F B6 CB F7 75 0C 8B 45 08 0F B6 04 02 03 C6 03 C8 0F B6 F1 8A 84 35 FC FE FF FF 88 84 3D FC FE FF FF 47 88 9C 35 FC FE FF FF 81 FF 00 01 00 00 72 C3} + $OtherRE1 = "expand 32-byte kexpand 16-byte k" ascii fullword + $OtherRE2 = "sysshadow" ascii fullword + $OtherRE3 = "SCROLLBAR" ascii fullword + $OtherRE4 = "msctfime ui" ascii fullword + $OtherRE5 = "\\BaseNamedObjects\\%S" wide fullword + $RE_dec = "rwdec_x86_debug.pdb" ascii + $GCREvil_string_decoder_opcodes = {33 D2 8A 9C 3D FC FE FF FF 8B C7 0F B6 CB F7 75 0C 8B 45 08 0F B6 04 02 03 C6 03 C8 0F B6 F1 8A 84 35 FC FE FF FF 88 84 3D FC FE FF FF 47 88 9C 35 FC FE FF FF 81 FF 00 01 00 00 72 C3 } + $REvil_string_decoder_opcodes1 = {8B C1 8A 1C 39 33 D2 0F B6 CB F7 75 ?? 8B 45 ?? 0F B6 04 02 03 C6 03 C8 0F B6 F1 8B 4D ?? 8A 04 3E 88 04 39 41 88 1C 3E 89 4D ?? 81 F9 00 01 00 00 } condition: - uint16(0) == 0x5A4D and $decode and any of ($RE*) + uint16(0) == 0x5a4d + and (($GCREvil_string_decoder_opcodes and any of ($OtherRE*)) or any of ($REvil_string_decoder_opcodes*)) and not $RE_dec } From 01442cc37e6b67b9109680910d9f037ac765f0e8 Mon Sep 17 00:00:00 2001 From: DoomedRaven Date: Mon, 27 Jan 2020 10:53:55 +0100 Subject: [PATCH 56/67] small update to better show yara without capetype --- modules/signatures/cape_extracted.py | 2 ++ web/templates/analysis/procdump/index.html | 2 ++ 2 files changed, 4 insertions(+) diff --git a/modules/signatures/cape_extracted.py b/modules/signatures/cape_extracted.py index 4c1c54725e8..a3c54d2208b 100644 --- a/modules/signatures/cape_extracted.py +++ b/modules/signatures/cape_extracted.py @@ -29,6 +29,8 @@ def run(self): if "CAPE" in self.results: for cape in self.results.get("CAPE", []): capetype = cape.get("cape_type", "") + if not capetype: + capetype = cape.get("description", "") yara = cape.get("cape_yara", "") process = cape.get("process_name", "") if capetype and process: diff --git a/web/templates/analysis/procdump/index.html b/web/templates/analysis/procdump/index.html index b6c89e85c99..d78e3b617a7 100644 --- a/web/templates/analysis/procdump/index.html +++ b/web/templates/analysis/procdump/index.html @@ -80,6 +80,8 @@ {% for sign in file.cape_yara %} {% if sign.meta.cape_type %}
  • {{sign.meta.cape_type}}
  • + {% elif sign.meta.description %} +
  • {{sign.meta.description}}
  • {% endif %} {% endfor %} From 09d341db5ff5739e457dd1f61bb7d8673dc77a71 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 27 Jan 2020 15:14:17 +0000 Subject: [PATCH 57/67] Update Emotet package to increase throughput --- analyzer/windows/modules/packages/Emotet.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/analyzer/windows/modules/packages/Emotet.py b/analyzer/windows/modules/packages/Emotet.py index f6ed8eb42a1..48dfd81fcf2 100644 --- a/analyzer/windows/modules/packages/Emotet.py +++ b/analyzer/windows/modules/packages/Emotet.py @@ -18,7 +18,8 @@ def __init__(self, options={}, config=None): self.pids = [] self.options["extraction"] = "1" self.options["procdump"] = "0" - self.options["exclude-apis"] = "RegOpenKeyExA" + self.options["single-process"] = "1" + self.options["exclude-apis"] = "RegOpenKeyExA:SendMessageA" def start(self, path): args = self.options.get("arguments") From 3073de3839c2ee9600a6643350cfa87058548522 Mon Sep 17 00:00:00 2001 From: enzo <7831008+enzok@users.noreply.github.com> Date: Mon, 27 Jan 2020 11:50:01 -0500 Subject: [PATCH 58/67] Fix - Show filepath of dropped file instead of the hash --- web/templates/analysis/dropped/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/templates/analysis/dropped/index.html b/web/templates/analysis/dropped/index.html index 16e1911664f..9eaf33789d8 100644 --- a/web/templates/analysis/dropped/index.html +++ b/web/templates/analysis/dropped/index.html @@ -5,7 +5,7 @@ - + From 978d8e8e3e2a68fda3ce9e517bccb434f23a1b89 Mon Sep 17 00:00:00 2001 From: enzo <7831008+enzok@users.noreply.github.com> Date: Mon, 27 Jan 2020 11:53:02 -0500 Subject: [PATCH 59/67] Update index.html --- web/templates/analysis/dropped/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/templates/analysis/dropped/index.html b/web/templates/analysis/dropped/index.html index 9eaf33789d8..b37c1785756 100644 --- a/web/templates/analysis/dropped/index.html +++ b/web/templates/analysis/dropped/index.html @@ -5,7 +5,7 @@
    File name{{file.name}}{{file.filepath}}
    Associated Filenames
    - + From e3aac1c8d586bc04db5561c113abec9aa9c768b9 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 27 Jan 2020 19:02:48 +0000 Subject: [PATCH 60/67] Handle Hancitor DLLs properly --- .../windows/modules/packages/Hancitor_dll.py | 43 +++++++++++++++++++ modules/reporting/submitCAPE.py | 4 +- 2 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 analyzer/windows/modules/packages/Hancitor_dll.py diff --git a/analyzer/windows/modules/packages/Hancitor_dll.py b/analyzer/windows/modules/packages/Hancitor_dll.py new file mode 100644 index 00000000000..134a2b041b6 --- /dev/null +++ b/analyzer/windows/modules/packages/Hancitor_dll.py @@ -0,0 +1,43 @@ +# Copyright (C) 2010-2015 Cuckoo Foundation. +# This file is part of Cuckoo Sandbox - http://www.cuckoosandbox.org +# See the file 'docs/LICENSE' for copying permission. + +from __future__ import absolute_import +import os +import shutil + +from lib.common.abstracts import Package + +class Hancitor_Dll(Package): + """DLL analysis package.""" + PATHS = [ + ("SystemRoot", "system32", "rundll32.exe"), + ] + + def start(self, path): + rundll32 = self.get_path("rundll32.exe") + function = self.options.get("function", "#1") + arguments = self.options.get("arguments") + dllloader = self.options.get("dllloader") + self.options["hancitor"] = "1" + + # Check file extension. + ext = os.path.splitext(path)[-1].lower() + # If the file doesn't have the proper .dll extension force it + # and rename it. This is needed for rundll32 to execute correctly. + # See ticket #354 for details. + if ext != ".dll": + new_path = path + ".dll" + os.rename(path, new_path) + path = new_path + + args = "\"{0}\",{1}".format(path, function) + if arguments: + args += " {0}".format(arguments) + + if dllloader: + newname = os.path.join(os.path.dirname(rundll32), dllloader) + shutil.copy(rundll32, newname) + rundll32 = newname + + return self.execute(rundll32, args, path) diff --git a/modules/reporting/submitCAPE.py b/modules/reporting/submitCAPE.py index f4876af7ec1..eec15304862 100644 --- a/modules/reporting/submitCAPE.py +++ b/modules/reporting/submitCAPE.py @@ -41,7 +41,7 @@ "Compression", "Compression_dll", "Compression_doc", "Compression_zip", "Compression_js", "Compression_pdf", "Debugger", "Debugger_dll", "Debugger_doc", "DumpOnAPI", "Doppelganging", "Emotet", "Emotet_doc", "EvilGrab", "Extraction", "Extraction_dll", "Extraction_regsvr", "Extraction_zip", "Extraction_ps1", "Extraction_jar", "Extraction_pdf", "Extraction_js", - "Hancitor", "Hancitor_doc", "IcedID", "Injection", "Injection_dll", "Injection_doc", "Injection_pdf", "Injection_zip", + "Hancitor", "Hancitor_dll", "Hancitor_doc", "IcedID", "Injection", "Injection_dll", "Injection_doc", "Injection_pdf", "Injection_zip", "Injection_ps1", "Injection_js", "PlugX", "PlugXPayload", "PlugX_dll", "PlugX_doc", "PlugX_zip", "QakBot", "RegBinary", "Sedreco", "Sedreco_dll", "Shellcode-Extraction", "TrickBot", "TrickBot_doc", "UPX", "UPX_dll", "Ursnif" ] @@ -451,6 +451,8 @@ def run(self, results): package = 'Hancitor_doc' elif parent_package in ('exe', 'Injection', 'Compression'): package = 'Hancitor' + elif parent_package in ('dll', 'Injection_dll', 'Compression_dll'): + package = 'Hancitor_dll' # if 'RegBinary' in detections or 'CreatesLargeKey' in detections: elif 'RegBinary' in detections: From 438bf7b5bbcca911abb8a3b3411b6d60ab8d0c36 Mon Sep 17 00:00:00 2001 From: me <7831008+enzok@users.noreply.github.com> Date: Mon, 27 Jan 2020 15:07:10 -0500 Subject: [PATCH 61/67] 1. Better fix for dropped file names 2. Fix preview of dropped text files --- modules/processing/dropped.py | 51 ++++++----------------- web/templates/analysis/dropped/index.html | 2 +- 2 files changed, 13 insertions(+), 40 deletions(-) diff --git a/modules/processing/dropped.py b/modules/processing/dropped.py index 361e977bb07..02a285ef5dc 100644 --- a/modules/processing/dropped.py +++ b/modules/processing/dropped.py @@ -41,52 +41,25 @@ def run(self): file_path = os.path.join(dir_name, file_name) file_info = File(file_path=file_path).get_all() file_info.update(meta.get(file_info["path"], {})) + guest_path = file_info["filepath"] + guest_name = guest_path.split("\\")[-1] + file_info["guest_paths"] = [guest_path] + file_info["name"] = guest_name dropped_files.append(file_info) - - for dir_name, dir_names, file_names in os.walk(self.package_files): - for file_name in file_names: - file_path = os.path.join(dir_name, file_name) - file_info = File(file_path=file_path).get_all() - dropped_files.append(file_info) - - return dropped_files - - # ToDo adapt - textchars = bytearray({7, 8, 9, 10, 12, 13, 27} | set(range(0x20, 0x100)) - {0x7f}) - is_binary_file = lambda bytes: bool(bytes.translate(None, textchars)) - file_names = os.listdir(self.dropped_path) - for file_name in file_names: - file_path = os.path.join(self.dropped_path, file_name) - if not os.path.isfile(file_path): - continue - if file_name.endswith("_info.txt"): - continue - guest_paths = [line.strip() for line in open(file_path + "_info.txt")] - guest_name = guest_paths[0].split("\\")[-1] - file_info = File(file_path=file_path, guest_paths=guest_paths, file_name=guest_name).get_all() - texttypes = [ - "ASCII", - "Windows Registry text", - "XML document text", - "Unicode text", - ] - readit = False - for texttype in texttypes: - if texttype in file_info["type"]: - readit = True - break - - if is_binary_file(open(file_info["path"], 'rb').read(8192)): - pass - else: - if readit: + try: with open(file_info["path"], "r") as drop_open: filedata = drop_open.read(buf + 1) if len(filedata) > buf: file_info["data"] = convert_to_printable(filedata[:buf] + " ") else: file_info["data"] = convert_to_printable(filedata) + except UnicodeDecodeError as e: + pass - dropped_files.append(file_info) + for dir_name, dir_names, file_names in os.walk(self.package_files): + for file_name in file_names: + file_path = os.path.join(dir_name, file_name) + file_info = File(file_path=file_path).get_all() + dropped_files.append(file_info) return dropped_files diff --git a/web/templates/analysis/dropped/index.html b/web/templates/analysis/dropped/index.html index b37c1785756..71a92bdae1e 100644 --- a/web/templates/analysis/dropped/index.html +++ b/web/templates/analysis/dropped/index.html @@ -5,7 +5,7 @@
    File name{{file.filepath}}{{file.filepath|safe}}
    Associated Filenames
    - + From 61bd3ea6a3db23e0897ed6adef949b1ab51f46f6 Mon Sep 17 00:00:00 2001 From: ditekshen Date: Mon, 27 Jan 2020 20:17:00 +0000 Subject: [PATCH 62/67] Add shellcode Yara signature and parser --- data/yara/CAPE/SCInject.yar | 28 +++++++++++++++++++++ modules/processing/parsers/CAPE/SCInject.py | 23 +++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 data/yara/CAPE/SCInject.yar create mode 100644 modules/processing/parsers/CAPE/SCInject.py diff --git a/data/yara/CAPE/SCInject.yar b/data/yara/CAPE/SCInject.yar new file mode 100644 index 00000000000..0b71632bccd --- /dev/null +++ b/data/yara/CAPE/SCInject.yar @@ -0,0 +1,28 @@ +rule SCInject { + meta: + author = "ditekshen" + description = "Shellcode injector and downloader via RegAsm.exe payload" + cape_type = "Shellcode injector and downloader Payload" + strings: + $s1 = "wininet.dll" fullword ascii + $s2 = "ShellExecuteW" fullword ascii + $s3 = "SHCreateDirectoryExW" fullword ascii + $s4 = "Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce" fullword ascii + $s5 = "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" fullword ascii + + $o1 = "msvbvm60.dll" fullword wide + $o2 = "\\syswow64\\" fullword wide + $o3 = "\\system32\\" fullword wide + $o4 = "\\Microsoft.NET\\Framework\\" fullword wide + $o5 = "USERPROFILE=" wide nocase + $o6 = "windir=" fullword wide + $o7 = "APPDATA=" nocase wide + $o8 = "RegAsm.exe" fullword wide + + $url1 = "https://drive.google.com/uc?export=download&id=" ascii + $url2 = "https://onedrive.live.com/download?cid=" ascii + $url3 = "http://myurl/myfile.bin" fullword ascii + $url4 = "http" ascii // fallback + condition: + all of ($s*) and 2 of ($o*) and 1 of ($url*) +} diff --git a/modules/processing/parsers/CAPE/SCInject.py b/modules/processing/parsers/CAPE/SCInject.py new file mode 100644 index 00000000000..55d973724c0 --- /dev/null +++ b/modules/processing/parsers/CAPE/SCInject.py @@ -0,0 +1,23 @@ +try: + import re2 as re +except ImportError: + import re + +def config(data): + urls = [] + urls_dict = dict() + + try: + output = re.findall('http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+', data) + + for url in output: + urls.append(url.lower()) + + except Exception as e: + print (e) + + if len(urls) > 0: + urls_dict['URLs'] = urls + return urls_dict + else: + return None \ No newline at end of file From bd8c77392361a08b10c4b135e8a55b2cf5950b69 Mon Sep 17 00:00:00 2001 From: me <7831008+enzok@users.noreply.github.com> Date: Mon, 27 Jan 2020 15:33:15 -0500 Subject: [PATCH 63/67] Fix preview of CAPE processed text files --- modules/processing/CAPE.py | 30 ++++++++++-------------------- 1 file changed, 10 insertions(+), 20 deletions(-) diff --git a/modules/processing/CAPE.py b/modules/processing/CAPE.py index 04764ccc98e..c310be2ce89 100644 --- a/modules/processing/CAPE.py +++ b/modules/processing/CAPE.py @@ -168,29 +168,19 @@ def process_file(self, file_path, CAPE_output, append_file, metadata={}): if file_path.endswith("_info.txt"): return - texttypes = [ - "ASCII", - "Windows Registry text", - "XML document text", - "Unicode text", - ] - - textchars = bytearray({7, 8, 9, 10, 12, 13, 27} | set(range(0x20, 0x100)) - {0x7f}) - is_binary_file = lambda bytes: bool(bytes.translate(None, textchars)) - file_info = File(file_path, metadata.get("metadata", "")).get_all() # Get the file data - with open(file_info["path"], "rb") as file_open: - file_data = file_open.read(buf + 1) - - if is_binary_file(file_data[:8192]): - file_info["data"] = None - else: - if len(file_data) > buf: - file_info["data"] = convert_to_printable(file_data[:buf] + " ") - else: - file_info["data"] = convert_to_printable(file_data) + try: + with open(file_info["path"], "r") as file_open: + file_data = file_open.read(buf + 1) + + if len(file_data) > buf: + file_info["data"] = convert_to_printable(file_data[:buf] + " ") + else: + file_info["data"] = convert_to_printable(file_data) + except UnicodeDecodeError as e: + pass if metadata.get("pids", False): if len(metadata["pids"]) == 1: From e2a5f410ba9b8acd6d64b297e61fa5d93a63ad36 Mon Sep 17 00:00:00 2001 From: me <7831008+enzok@users.noreply.github.com> Date: Mon, 27 Jan 2020 15:35:48 -0500 Subject: [PATCH 64/67] Update dropped.py --- modules/processing/dropped.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/processing/dropped.py b/modules/processing/dropped.py index 02a285ef5dc..747c0cbeaa0 100644 --- a/modules/processing/dropped.py +++ b/modules/processing/dropped.py @@ -45,7 +45,6 @@ def run(self): guest_name = guest_path.split("\\")[-1] file_info["guest_paths"] = [guest_path] file_info["name"] = guest_name - dropped_files.append(file_info) try: with open(file_info["path"], "r") as drop_open: filedata = drop_open.read(buf + 1) @@ -55,6 +54,7 @@ def run(self): file_info["data"] = convert_to_printable(filedata) except UnicodeDecodeError as e: pass + dropped_files.append(file_info) for dir_name, dir_names, file_names in os.walk(self.package_files): for file_name in file_names: From 6909f59f677ce536658d9663f3a544ee7d04d676 Mon Sep 17 00:00:00 2001 From: doomedraven Date: Mon, 27 Jan 2020 22:31:22 +0100 Subject: [PATCH 65/67] Update SCInject.py --- modules/processing/parsers/CAPE/SCInject.py | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/modules/processing/parsers/CAPE/SCInject.py b/modules/processing/parsers/CAPE/SCInject.py index 55d973724c0..02281ef1bb8 100644 --- a/modules/processing/parsers/CAPE/SCInject.py +++ b/modules/processing/parsers/CAPE/SCInject.py @@ -3,21 +3,17 @@ except ImportError: import re +url_regex = re.compile('http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+') + def config(data): - urls = [] urls_dict = dict() try: - output = re.findall('http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+', data) - - for url in output: - urls.append(url.lower()) - + urls_dict["URls"] = [url.lower() for url in url_regex.match(data)] except Exception as e: - print (e) + print(e) - if len(urls) > 0: - urls_dict['URLs'] = urls + if "URLs" in urls_dict and len(urls_dict["URLs"]) > 1: return urls_dict - else: - return None \ No newline at end of file + + return None From 66c3b766e1cf0773a32297a81cab4f6338332dac Mon Sep 17 00:00:00 2001 From: DoomedRaven Date: Tue, 28 Jan 2020 10:23:31 +0100 Subject: [PATCH 66/67] Update packages.py --- analyzer/windows/lib/core/packages.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/analyzer/windows/lib/core/packages.py b/analyzer/windows/lib/core/packages.py index 8eaffefe7a9..8b0b74d410d 100644 --- a/analyzer/windows/lib/core/packages.py +++ b/analyzer/windows/lib/core/packages.py @@ -58,7 +58,7 @@ def choose_package(file_type, file_name, exports, target): return "rar" elif "Macromedia Flash" in file_type or file_name.endswith(".swf"): return "swf" - elif file_name.endswith((b".py", ".pyc")) or "Python script" in file_type: + elif file_name.endswith((".py", ".pyc")) or "Python script" in file_type: return "python" elif file_name.endswith(".msi"): return "msi" From 5c8deace93a51010e37b817065cdd3898aff6277 Mon Sep 17 00:00:00 2001 From: ElMaisBuscado Date: Tue, 28 Jan 2020 16:48:22 +0100 Subject: [PATCH 67/67] fixed split error and identation --- modules/machinery/kvmremote.py | 54 ++++++++++++++++++---------------- 1 file changed, 28 insertions(+), 26 deletions(-) diff --git a/modules/machinery/kvmremote.py b/modules/machinery/kvmremote.py index c201b7ce656..913f3830271 100644 --- a/modules/machinery/kvmremote.py +++ b/modules/machinery/kvmremote.py @@ -47,7 +47,7 @@ def _initialize(self, module_name): super(KVMRemote, self)._initialize(module_name) hypervs_labels = self.options.get("kvmremote")["hypervisors"] - hypervs_labels = ("".join(hypervs_labels.split())).split(b",") + hypervs_labels = ("".join(hypervs_labels.split())).split(",") for machine in self.machines(): machine_cfg = self.options.get(machine.label) @@ -88,46 +88,48 @@ def dump_memory(self, label, path): @param path: path to where to store the memory dump. """ - # ssh and create save file then copy to path + # ssh and create save file then copy to path try: # create the memory dump file ourselves first so it doesn't end up root/root 0600 # it'll still be owned by root, so we can't delete it, but at least we can read it fd = open(path, "w") fd.close() + try: + from subprocess import DEVNULL # py3k + except ImportError: + import os + DEVNULL = open(os.devnull, 'wb') - try: - from subprocess import DEVNULL # py3k - except ImportError: - import os - DEVNULL = open(os.devnull, 'wb') + # this triggers local dump - # this triggers local dump + #self.vms[label].coreDump(path, flags=libvirt.VIR_DUMP_MEMORY_ONLY) - #self.vms[label].coreDump(path, flags=libvirt.VIR_DUMP_MEMORY_ONLY) - - machine_label = None - hypverv_cfg = None - # use first + machine_label = None + hypverv_cfg = None + # use first for machine in self.machines(): machine_cfg = self.options.get(machine.label) hyperv_cfg = self.options.get(machine_cfg.hypervisor) - break + break - remote_host = hyperv_cfg['remote_host'] + remote_host = hyperv_cfg['remote_host'] - log.info("Dumping volatile memory remotely @ %s (%s)" % (remote_host, label)) + log.info("Dumping volatile memory remotely @ %s (%s)" % + (remote_host, label)) - remote_output = subprocess.check_output(['ssh', remote_host, "virsh", "dump", "--memory-only", label, "/data/memory/%s.memory.dump" % (label) ], stderr=DEVNULL) - log.debug("Copying memory from remote host") - remote_output = subprocess.check_output(['scp', '-q', remote_host + ":/data/memory/%s.memory.dump" % label, path ], stderr=DEVNULL) - log.debug("Removing memory from remote host") - remote_output = subprocess.check_output(['ssh', remote_host, "rm", "-f", "/data/memory/%s.memory.dump" % (label) ], stderr=DEVNULL) + remote_output = subprocess.check_output( + ['ssh', remote_host, "virsh", "dump", "--memory-only", label, "/data/memory/%s.memory.dump" % (label)], stderr=DEVNULL) + log.debug("Copying memory from remote host") + remote_output = subprocess.check_output( + ['scp', '-q', remote_host + ":/data/memory/%s.memory.dump" % label, path], stderr=DEVNULL) + log.debug("Removing memory from remote host") + remote_output = subprocess.check_output( + ['ssh', remote_host, "rm", "-f", "/data/memory/%s.memory.dump" % (label)], stderr=DEVNULL) - if not os.path.isfile(path): - raise CuckooMachineError("Error dumping memory virtual machine " - "{0}: {1}".format(label, "file not found")) + if not os.path.isfile(path): + raise CuckooMachineError("Error dumping memory virtual machine " + "{0}: {1}".format(label, "file not found")) except libvirt.libvirtError as e: raise CuckooMachineError("Error dumping memory virtual machine " - "{0}: {1}".format(label, e)) - + "{0}: {1}".format(label, e)) \ No newline at end of file
    File name{{file.filepath|safe}}{{file.name|safe}}
    Associated Filenames