Sunday, 28 January 2024

AzureHunter - A Cloud Forensics Powershell Module To Run Threat Hunting Playbooks On Data From Azure And O365


A Powershell module to run threat hunting playbooks on data from Azure and O365 for Cloud Forensics purposes.


Getting Started

1. Check that you have the right O365 Permissions

The following roles are required in Exchange Online, in order to be able to have read only access to the UnifiedAuditLog: View-Only Audit Logs or Audit Logs.

These roles are assigned by default to the Compliance Management role group in Exchange Admin Center.

NOTE: if you are a security analyst, incident responder or threat hunter and your organization is NOT giving you read-only access to these audit logs, you need to seriously question what their detection and response strategy is!

More information:

NOTE: your admin can verify these requirements by running Get-ManagementRoleEntry "*\Search-UnifiedAuditLog" in your Azure tenancy cloud shell or local powershell instance connected to Azure.


2. Ensure ExchangeOnlineManagement v2 PowerShell Module is installed

Please make sure you have ExchangeOnlineManagement (EXOv2) installed. You can find instructions on the web or go directly to my little KB on how to do it at the soc analyst scrolls


3. Either Clone the Repo or Install AzureHunter from the PSGallery

3.1 Cloning the Repo
  1. Clone this repository
  2. Import the module Import-Module .\source\AzureHunter.psd1

3.2 Install AzureHunter from the PSGallery

All you need to do is:

Install-Module AzureHunter -Scope CurrentUser
Import-Module AzureHunter

What is the UnifiedAuditLog?

The unified audit log contains user, group, application, domain, and directory activities performed in the Microsoft 365 admin center or in the Azure management portal. For a complete list of Azure AD events, see the list of RecordTypes.

The UnifiedAuditLog is a great source of cloud forensic information since it contains a wealth of data on multiple types of cloud operations like ExchangeItems, SharePoint, Azure AD, OneDrive, Data Governance, Data Loss Prevention, Windows Defender Alerts and Quarantine events, Threat intelligence events in Microsoft Defender for Office 365 and the list goes on and on!


AzureHunter Data Consistency Checks

AzureHunter implements some useful logic to ensure that the highest log density is mined and exported from Azure & O365 Audit Logs. In order to do this, we run two different operations for each cycle (batch):

  1. Automatic Window Time Reduction: this check ensures that the time interval is reduced to the optimal interval based on the ResultSizeUpperThreshold parameter which by default is 20k. This means, if the amounts of logs returned within your designated TimeInterval is higher than ResultSizeUpperThreshold, then an automatic adjustment will take place.
  2. Sequential Data Check: are returned Record Indexes sequentially valid?



Usage

Ensure you connect to ExchangeOnline

It's recommended that you run Connect-ExchangeOnline before running any AzureHunter commands. The program checks for an active remote session and attempts to connect but some versions of Powershell don't allow this and you need to do it yourself regardless.


Run AzureHunter

AzureHunter has two main commands: Search-AzureCloudUnifiedLog and Invoke-HuntAzureAuditLogs.

The purpose of Search-AzureCloudUnifiedLog is to implement a complex logic to ensure that the highest percentage of UnifiedAuditLog records are mined from Azure. By default, it will export extracted and deduplicated records to a CSV file.

The purpose of Invoke-HuntAzureAuditLogs is to provide a flexible interface into hunting playbooks stored in the playbooks folder. These playbooks are designed so that anyone can contribute with their own analytics and ideas. So far, only two very simple playbooks have been developed: AzHunter.Playbook.Exporter and AzHunter.Playbook.LogonAnalyser. The Exporter takes care of exporting records after applying de-duplication and sorting operations to the data. The LogonAnalyser is in beta mode and extracts events where the Operations property is UserLoggedIn. It is an example of what can be done with the playbooks and how easy it is to construct one.

When running Search-AzureCloudUnifiedLog, you can pass in a list of playbooks to run per log batch. Search-AzureCloudUnifiedLog will pass on the batch to the playbooks via Invoke-HuntAzureAuditLogs.

Finally Invoke-HuntAzureAuditLogs can, be used standalone. If you have an export of UnifiedAuditLog records, you can load them into a Powershell Array and pass them on to this command and specify the relevant playbooks.


Example 1 | Run search on Azure UnifiedAuditLog and extract records to CSV file (default behaviour)
Search-AzureCloudUnifiedLog -StartDate "2020-03-06T10:00:00" -EndDate "2020-06-09T12:40:00" -TimeInterval 12 -AggregatedResultsFlushSize 5000 -Verbose

This command will:

  • Search data between the dates in StartDate and EndDate
  • Implement a window of 12 hours between these dates, which will be used to sweep the entire length of the time interval (StartDate --> EndDate). This window will be automatically reduced and adjusted to provide the maximum amount of records within the window, thus ensuring higher quality of output. The time window slides sequentially until reaching the EndDate.
  • The AggregatedResultsFlushSize parameter speficies the batches of records that will be processed by downstream playbooks. We are telling AzureHunter here to process the batch of records once the total amount reaches 5000. This way, you can get results on the fly, without having to wait for hours until a huge span of records is exported to CSV files.

Example 2 | Run Hunting Playbooks on CSV File

We assume that you have exported UnifiedAuditLog records to a CSV file, if so you can then do:

$RecordArray = Import-Csv .\my-exported-records.csv
Invoke-HuntAzureAuditLogs -Records $RecordArray -Playbooks 'AzHunter.Playbook.LogonAnalyser'

You can run more than one playbook by separating them via commas, they will run sequentially:

$RecordArray = Import-Csv .\my-exported-records.csv
Invoke-HuntAzureAuditLogs -Records $RecordArray -Playbooks 'AzHunter.Playbook.Exporter', 'AzHunter.Playbook.LogonAnalyser'

Why?

Since the aftermath of the SolarWinds Supply Chain Compromise many tools have emerged out of deep forges of cyberforensicators, carefully developed by cyber blacksmith ninjas. These tools usually help you perform cloud forensics in Azure. My intention with AzureHunter is not to bring more noise to this crowded space, however, I found myself in the need to address some gaps that I have observed in some of the tools in the space (I might be wrong though, since there is a proliferation of tools out there and I don't know them all...):

  1. Azure cloud forensic tools don't usually address the complications of the Powershell API for the UnifiedAuditLog. This API is very unstable and inconsistent when exporting large quantities of data. I wanted to develop an interface that is fault tolerant (enough) to address some of these issues focusing solely on the UnifiedAuditLog since this is the Azure artefact that contains the most relevant and detailed activity logs for users, applications and services.
  2. Azure cloud forensic tools don't usually put focus on developing extensible Playbooks. I wanted to come up with a simple framework that would help the community create and share new playbooks to extract different types of meaning off the same data.

If, however, you are looking for a more feature rich and mature application for Azure Cloud Forensics I would suggest you check out the excellent work performed by the cyber security experts that created the following applications:

I'm sure there is a more extensive list of tools, but these are the ones I could come up with. Feel free to suggest some more.


Why Powershell?
  1. I didn't want to re-invent the wheel
  2. Yes the Powershell interface to Azure's UnifiedAuditLog is unstable, but in terms of time-to-production it would have taken me an insane amount of hours to achieve the same thing writing a whole new interface in languages such as .NET, Golang or Python to achieve the same objectives. In the meanwhile, the world of Cyber Defense and Response does not wait!

TODO
  • Specify standard playbook metadata attributes that need to be present so that AzureHunter can leverage them.
  • Allow for playbooks to specify dependencies on other playbooks so that one needs to be run before the other. Playbook chaining could produce interesting results and avoid code duplication.
  • Develop Pester tests and Coveralls results.
  • Develop documentation in ReadTheDocs.
  • Allow for the specification of playbooks in SIGMA rule standard (this might require some PR to the SIGMA repo)

More Information

For more information


Credits


Related news


  1. Hack Tools For Pc
  2. What Are Hacking Tools
  3. Pentest Tools Online
  4. Hacker Hardware Tools
  5. Pentest Tools Android
  6. Hacks And Tools
  7. Tools 4 Hack
  8. Hacker Tools Online
  9. Hacker Tools For Ios
  10. Pentest Tools For Mac
  11. Pentest Tools For Android
  12. Blackhat Hacker Tools
  13. Pentest Tools Apk
  14. Hack Rom Tools
  15. Hack App
  16. Hack App
  17. Hacker Tools For Pc
  18. Hack Tools Download
  19. Hack Tools For Ubuntu
  20. Pentest Tools Review
  21. Hacking Tools 2020
  22. Hacking Tools Github
  23. Pentest Tools For Mac
  24. Best Hacking Tools 2020
  25. Hack Tools
  26. Hack Tools
  27. Pentest Tools Url Fuzzer
  28. Pentest Tools Alternative
  29. Hacking Tools
  30. Pentest Tools Website Vulnerability
  31. Hack App
  32. Game Hacking
  33. Hacking App
  34. Pentest Box Tools Download
  35. Pentest Box Tools Download
  36. Growth Hacker Tools
  37. Top Pentest Tools
  38. Nsa Hack Tools
  39. Hack Website Online Tool
  40. Install Pentest Tools Ubuntu
  41. World No 1 Hacker Software
  42. Kik Hack Tools
  43. Free Pentest Tools For Windows
  44. Hacking Tools For Kali Linux
  45. Bluetooth Hacking Tools Kali
  46. Hack Tools Download
  47. Hacker Tools List
  48. Install Pentest Tools Ubuntu
  49. Hacks And Tools
  50. Ethical Hacker Tools
  51. Hacking Apps
  52. Hacker Tools Linux
  53. Usb Pentest Tools
  54. Hack Tools Online
  55. Pentest Tools Website
  56. Hacking Tools For Mac
  57. Beginner Hacker Tools
  58. Pentest Tools
  59. Hacking App
  60. Install Pentest Tools Ubuntu
  61. Hacker Tools List
  62. Hack Tool Apk No Root
  63. Free Pentest Tools For Windows
  64. Hacking Apps
  65. Pentest Tools Website
  66. Hacking Tools Usb
  67. Hack Tools Download
  68. Hacker Hardware Tools
  69. Hacker Search Tools
  70. Kik Hack Tools
  71. Pentest Tools Review
  72. Hacker
  73. Black Hat Hacker Tools
  74. Best Hacking Tools 2020
  75. Hacking Tools Pc
  76. Best Pentesting Tools 2018
  77. Pentest Tools Bluekeep
  78. Tools 4 Hack
  79. Pentest Tools List
  80. Pentest Tools Port Scanner
  81. Pentest Tools Free
  82. Hacker Tool Kit
  83. Hacking Tools For Pc
  84. Hack Tools For Pc
  85. Hacking Tools For Mac
  86. Hacking Tools Mac
  87. Pentest Tools Online
  88. Blackhat Hacker Tools
  89. Hacking Tools For Mac
  90. Pentest Tools Port Scanner
  91. Underground Hacker Sites
  92. Hacker Search Tools
  93. Tools For Hacker
  94. Black Hat Hacker Tools
  95. Pentest Tools Website Vulnerability
  96. Hackers Toolbox
  97. Android Hack Tools Github
  98. Pentest Tools For Android
  99. How To Install Pentest Tools In Ubuntu
  100. Hacker Tools Linux
  101. Hacker Techniques Tools And Incident Handling
  102. Hack Tools
  103. Hacking Tools And Software
  104. Usb Pentest Tools
  105. Pentest Tools Bluekeep
  106. Blackhat Hacker Tools
  107. Pentest Tools Nmap
  108. Hacker Tools 2019
  109. Pentest Tools Nmap
  110. Hacking Tools And Software
  111. Hacking Tools Online
  112. Hackers Toolbox
  113. Hack Tools
  114. How To Install Pentest Tools In Ubuntu
  115. Hacker Tools Github
  116. Hack Tools Download
  117. Hacker Tools For Windows
  118. New Hacker Tools
  119. Hacking Tools For Mac
  120. Hacker Techniques Tools And Incident Handling
  121. Hacking Apps
  122. Hacking Tools 2020
  123. Best Hacking Tools 2019
  124. Hacker Tools Github
  125. Pentest Tools Android
  126. Hacker Tools 2019
  127. Hack Tools Github
  128. Hacking Tools For Windows
  129. Hacker Tools Windows
  130. Hacker Tools List
  131. Hacking Tools Free Download
  132. Hacker Hardware Tools
  133. Pentest Reporting Tools
  134. Hacker Tools 2019
  135. Hacking Tools Usb
  136. Tools Used For Hacking
  137. Hacking Tools Name
  138. Pentest Tools List
  139. Pentest Tools Apk
  140. Install Pentest Tools Ubuntu
  141. Nsa Hack Tools Download
  142. Pentest Tools For Mac
  143. Hacking Tools For Windows 7
  144. Pentest Tools Framework
  145. Hack Tools For Mac
  146. Hacking Tools Name
  147. Nsa Hacker Tools
  148. Hack Tools Mac
  149. Blackhat Hacker Tools
  150. How To Install Pentest Tools In Ubuntu
  151. Best Pentesting Tools 2018
  152. Hacker Tools 2019
  153. Game Hacking
  154. Pentest Tools For Android
  155. Easy Hack Tools
  156. Pentest Tools For Mac
  157. Best Pentesting Tools 2018
  158. Hacking App
  159. Tools For Hacker
  160. Usb Pentest Tools
  161. Pentest Tools For Android
  162. Hack Tools For Mac
  163. Hacking Tools Pc
  164. Pentest Tools Find Subdomains
  165. Hacker Security Tools
  166. Pentest Tools Website Vulnerability
  167. Nsa Hacker Tools
  168. How To Make Hacking Tools
  169. Pentest Tools Alternative
  170. Hacking Tools
  171. Hack Tools Pc
Read More :- "AzureHunter - A Cloud Forensics Powershell Module To Run Threat Hunting Playbooks On Data From Azure And O365"

Files Download Information




After 7 years of Contagio existence, Google Safe Browsing services notified Mediafire (hoster of Contagio and Contagiominidump files) that "harmful" content is hosted on my Mediafire account.

It is harmful only if you harm your own pc and but not suitable for distribution or infecting unsuspecting users but I have not been able to resolve this with Google and Mediafire.

Mediafire suspended public access to Contagio account.

The file hosting will be moved.

If you need any files now, email me the posted Mediafire links (address in profile) and I will pull out the files and share via other methods.

P.S. I have not been able to resolve "yet" because it just happened today, not because they refuse to help.  I don't want to affect Mediafire safety reputation and most likely will have to move out this time.

The main challenge is not to find hosting, it is not difficult and I can pay for it, but the effort move all files and fix the existing links on the Blogpost, and there are many. I planned to move out long time ago but did not have time for it. If anyone can suggest how to change all Blogspot links in bulk, I will be happy.


P.P.S. Feb. 24 - The files will be moved to a Dropbox Business account and shared from there (Dropbox team confirmed they can host it )  


The transition will take some time, so email me links to what you need. 

Thank you all
M
Related word
  1. Hacking Tools For Windows 7
  2. Pentest Recon Tools
  3. Pentest Tools Nmap
  4. Kik Hack Tools
  5. Hacking Tools Usb
  6. Kik Hack Tools
  7. Hacking Tools Usb
  8. Pentest Tools Alternative
  9. Hacker Tools Free Download
  10. Pentest Box Tools Download
  11. Hack Tools 2019
  12. Hack Tools For Mac
  13. Pentest Tools Website
  14. Termux Hacking Tools 2019
  15. Pentest Tools Find Subdomains
  16. Pentest Tools Windows
  17. Pentest Tools
  18. Hack Tools For Mac
  19. New Hacker Tools
  20. Hacker Tools Online
  21. Growth Hacker Tools
  22. Pentest Tools Online
  23. Hacker Tools Windows
  24. Pentest Tools Subdomain
  25. Beginner Hacker Tools
  26. Pentest Tools Windows
  27. Hacker Tools Free
  28. Pentest Tools Framework
  29. Hacker Tools Free Download
  30. Physical Pentest Tools
  31. Hack Tools Github
  32. Hacking Tools Mac
  33. Blackhat Hacker Tools
  34. Hacking Tools 2019
  35. Hacking Tools Online
  36. Best Hacking Tools 2019
  37. Hacking Tools Mac
  38. Free Pentest Tools For Windows
  39. Hacking Tools Kit
  40. Pentest Tools Windows
  41. Hack Tools For Mac
  42. Black Hat Hacker Tools
  43. Hacking Tools Github
  44. Pentest Recon Tools
  45. Hacker Tools Apk
  46. Physical Pentest Tools
  47. Pentest Tools Github
  48. Pentest Tools Alternative
  49. Hacks And Tools
  50. Pentest Tools Tcp Port Scanner
  51. Hacking Tools For Windows
  52. Nsa Hack Tools Download
  53. Pentest Tools Android
  54. Hacker Tools For Windows
  55. Underground Hacker Sites
  56. Hack Tools Github
  57. Pentest Tools Framework
  58. Pentest Tools Website
  59. Hacks And Tools
  60. Hacking Tools For Kali Linux
  61. Pentest Tools Review
  62. Pentest Tools Find Subdomains
  63. Hacking Tools And Software
  64. Hacker Tool Kit
  65. Hacking Tools
  66. Hacker Tools Windows
  67. Pentest Tools Open Source
  68. Termux Hacking Tools 2019
  69. Hacking Tools For Windows
  70. Hacking Tools For Windows Free Download
  71. Hacking Apps
  72. Hacking Tools Online
  73. How To Install Pentest Tools In Ubuntu
  74. Hacker Tools Github
  75. Hack Tools For Windows
  76. Hacking Tools For Kali Linux
  77. Underground Hacker Sites
  78. Hackrf Tools
  79. Hacker Tools For Windows
  80. Computer Hacker
  81. Pentest Tools
  82. Pentest Tools For Ubuntu
  83. What Is Hacking Tools
  84. Hacker Tools Software
  85. Pentest Tools Port Scanner
  86. Hacking Tools Download
  87. Pentest Tools Open Source
  88. Physical Pentest Tools
  89. Hack App
  90. Game Hacking
  91. Hacker Tools Software
  92. Hacker Tools Online
  93. Hacking Tools 2019
  94. Hacker Tools Online
  95. Hack Website Online Tool
  96. Pentest Tools Website Vulnerability
  97. Pentest Tools Port Scanner
  98. Hack Rom Tools
  99. Hack Apps
  100. Best Hacking Tools 2019
  101. Hacking Tools Online
  102. Termux Hacking Tools 2019
  103. Tools Used For Hacking
  104. Nsa Hacker Tools
  105. Nsa Hack Tools
  106. Hacker Tools Apk
  107. Hak5 Tools
  108. Pentest Tools
  109. Hacking Tools Github
Read More :- "Files Download Information"

Saturday, 27 January 2024

Recovering Data From An Old Encrypted Time Machine Backup

Recovering data from a backup should be an easy thing to do. At least this is what you expect. Yesterday I had a problem which should have been easy to solve, but it was not. I hope this blog post can help others who face the same problem.


The problem

1. I had an encrypted Time Machine backup which was not used for months
2. This backup was not on an official Apple Time Capsule or on a USB HDD, but on a WD MyCloud NAS
3. I needed files from this backup
4. After running out of time I only had SSH access to the macOS, no GUI

The struggle

By default, Time Machine is one of the best and easiest backup solution I have seen. As long as you stick to the default use case, where you have one active backup disk, life is pink and happy. But this was not my case.

As always, I started to Google what shall I do. One of the first options recommended that I add the backup disk to Time Machine, and it will automagically show the backup snapshots from the old backup. Instead of this, it did not show the old snapshots but started to create a new backup. Panic button has been pressed, backup canceled, back to Google.


Other tutorials recommend to click on the Time Machine icon and pressing alt (Option) key, where I can choose "Browse other backup disks". But this did not list the old Time Machine backup. It did list the backup when selecting disks in Time Machine preferences, but I already tried and failed that way.


YAT (yet another tutorial) recommended to SSH into the NAS, and browse the backup disk, as it is just a simple directory where I can see all the files. But all the files inside where just a bunch of nonsense, no real directory structure.

YAT (yet another tutorial) recommended that I can just easily browse the content of the backup from the Finder by double-clicking on the sparse bundle file. After clicking on it, I can see the disk image on the left part of the Finder, attached as a new disk.
Well, this is true, but because of some bug, when you connect to the Time Capsule, you don't see the sparse bundle file. And I got inconsistent results, for the WD NAS, double-clicking on the sparse bundle did nothing. For the Time Capsule, it did work.
At this point, I had to leave the location where the backup was present, and I only had remote SSH access. You know, if you can't solve a problem, let's complicate things by restrict yourself in solutions.

Finally, I tried to check out some data forensics blogs, and besides some expensive tools, I could find the solution.

The solution

Finally, a blog post provided the real solution - hdiutil.
The best part of hdiutil is that you can provide the read-only flag to it. This can be very awesome when it comes to forensics acquisition.


To mount any NAS via SMB:
mount_smbfs afp://<username>@<NAS_IP>/<Share_for_backup> /<mountpoint>

To mount a Time Capsule share via AFP:
mount_afp afp://any_username:password@<Time_Capsule_IP>/<Share_for_backup> /<mountpoint>

And finally this command should do the job:
hdiutil attach test.sparsebundle -readonly

It is nice that you can provide read-only parameter.

If the backup was encrypted and you don't want to provide the password in a password prompt, use the following:
printf '%s' 'CorrectHorseBatteryStaple' | hdiutil attach test.sparsebundle -stdinpass -readonly

Note: if you receive the error "resource temporarily unavailable", probably another machine is backing up to the device

And now, you can find your backup disk under /Volumes. Happy restoring!

Probably it would have been quicker to either enable the remote GUI, or to physically travel to the system and login locally, but that would spoil the fun.

Related posts


Read More :- "Recovering Data From An Old Encrypted Time Machine Backup"