1768.py¶
What 1768.py does¶
Using this tool
1768.py supports malware analysis. In this guide, you will use it to extract configuration from a known training sample without executing it. Follow the steps below and keep the output with your notes.
Tool guide at a glance¶
Extract configuration from a known training sample without executing it.
An inert or purpose built training sample stored in a disposable isolated analysis VM.
A static observation or capability finding with sample hash, tool output, and confidence statement.
Evidence and safety
Do not execute unknown samples on SUSA. Disable shared folders and credentials, and use only authorised training material. Record the input identifier, tool version, relevant commands or settings, time and time zone, output location, and any errors or limitations as you work.
Choose your journey¶
01Understand the evidenceLearn the malware analysis concepts and limitations.Complete when you can explain what the evidence can and cannot show.Beginner · No tool required 02Follow the 1768.py guideFollow the steps and screenshots below.Complete when the documented workflow produces its expected output.Guided · SUSA workstation · Time varies 03Interactive labPractise the tool workflow in a safe browser simulation.Complete when the guided result is supported by the case evidence.Beginner · Browser only 04Full LabUse your own training data, keep the output and explain what you found.Complete when another analyst can reproduce and verify the outcome.Intermediate · Isolated lab
How the labs complement this guide
The Interactive Lab uses example records to practise investigation decisions. It does not run the installed tool or establish how that version behaves. The Full Lab uses your own training environment and evidence. Obtain or create the required input before starting; a case name in an exercise is not a download.
Accessing 1768.py in SUSA¶
1768.py is a Python tool by Didier Stevens used to extract and decode Cobalt Strike Beacon configuration from files such as PE executables, shellcode, and memory dumps.
Download 1768.json and 1768.py.
Move the two files to C:\Tools\1768 folder.
Move the two memory samples from C:\Tools\VolatilityWorkbench-v2.1 to C:\Lab\memory.
Open a command prompt and run the following command against your extracted process memroy (minidump) for CCC.exe. Note this is for testing purposes and 1768.py is known to produce a lot of false positives.
Adding 1768.py to Path Environment¶
Open Environment Variables (Start → Environment Variables → Edit the system environment variables → Environment Variables).
Under User variables, select path and click Edit.
Click New and add (one entry per line):
Click OK (then OK on other windows to save changes).
Testing 1768.py¶
Open an administrator Command Prompt and run the following command:
The -x flag increases false positives because it tells 1768.py to try all 256 possible single byte XOR keys when looking for a Cobalt Strike config.
To reduce the false positives, use the sanity check flag -S
If prompted to install minidump module, install it by running:
If prompted to update pip, update it by running:
The result of the command should be similar to below screenshot: