Potential label issues and dual-use samples in powershell_benign_dataset
First, thank you for publishing MPSD. I reviewed a group of samples that repeatedly surfaced as high-confidence false positives.
I reviewed the 64 files below at commit 37cf29c461f5dfe0384e8e1256d15b8912e7405e.
Summary
- 47 files in
powershell_benign_dataset contain direct offensive capabilities such as keylogging, credential theft, C2, exploitation, privilege escalation, process injection, lateral movement, or payload generation. I recommend moving or relabeling these as malicious/offensive.
- 15 files are dual-use security or administration utilities. I recommend documenting the dataset's policy for these and tagging them separately rather than treating them as confirmed malware or ordinary benign automation.
- Six filenames occur in both
powershell_benign_dataset and malicious_pure, but the paired files are not byte-identical. These are filename collisions, not duplicate samples or direct cross-folder label conflicts.
High-confidence offensive/malicious-capability files (47)
181.ps1 - functional keylogger using keyboard-state APIs and logging keystrokes to disk.
3151.ps1 - obfuscated dnscat-style C2 with command execution and upload/download support.
4226.ps1 - Cred-Popper fake Outlook/domain credential prompt.
4227.ps1 - PsUACme UAC-bypass toolkit with embedded shellcode/DLL material.
4229.ps1 - extracts stored Wi-Fi passwords with key=clear.
4230.ps1 - finds and decrypts Group Policy cpassword values.
4236.ps1 - DaisyChain HTTP relay/C2 with domain fronting and encoded scripts.
4238.ps1 - enumerates service-permission weaknesses for privilege escalation.
4239.ps1 - WMI remote execution and remote-host reconnaissance.
4240.ps1 - EventVwr registry-hijack UAC bypass.
4242.ps1 - converts DLLs to reflective-injection shellcode.
4243.ps1 - background keylogger.
4244.ps1 - dumps NTDS.dit through ntdsutil IFM.
4245.ps1 - named-pipe payload proxy/relay.
4248.ps1 - SMB client with NTLM-hash authentication and pass-the-hash capability.
4249.ps1 - Powercat with command execution, relays, DNS mode, and payload generation.
4250.ps1 - EternalBlue/MS17-010 exploit and payload delivery.
4251.ps1 - service-abuse and privilege-escalation toolkit.
4252.ps1 - local/remote shellcode injection with Metasploit payload support.
4253.ps1 - token impersonation/duplication and process creation with stolen tokens.
4255.ps1 - enables sensitive token privileges used for privilege escalation.
4256.ps1 - SharpSocks HTTP proxy/C2 channel with domain fronting.
4257.ps1 - WMI remote command execution across target ranges.
4258.ps1 - remote PowerShell sessions through WinRM.
4259.ps1 - WMI event-subscription persistence.
4262.ps1 - pass-the-hash SMBExec/WMIExec remote command execution.
4263.ps1 - PsExec-style SMB/NTLM remote execution.
4264.ps1 - MS16-032 local privilege-escalation exploit.
4265.ps1 - SMBExec pass-the-hash remote execution.
4266.ps1 - NTLM relay/WPAD spoofing and credential interception.
4267.ps1 - process injection through remote-thread/APC methods.
4269.ps1 - NBNS/LLMNR/mDNS spoofing for credential harvesting.
4270.ps1 - Active Directory password spraying.
4271.ps1 - DCSync credential replication with injection support.
4274.ps1 - multiple UAC-bypass and DLL-hijacking methods.
4275.ps1 - named-pipe/token escalation to SYSTEM.
4278.ps1 - MS16-032 local privilege-escalation exploit.
4279.ps1 - Pipekat SMB relay/pass-the-hash and shellcode injection.
4281.ps1 - WMIExec remote execution with NTLM-hash authentication.
4282.ps1 - Inveigh NTLM capture/relay and name-resolution spoofing.
4283.ps1 - retrieves Group Policy autologon credentials.
4285.ps1 - PoshMSDaisy named-pipe C2 relay.
4286.ps1 - PoshC2 server component.
4287.ps1 - generates implants, encoded payloads, and delivery artifacts.
4288.ps1 - PoshC2 implant handler and tasking interface.
4289.ps1 - PoshC2 implant viewer/management component.
4290.ps1 - downloads and installs PoshC2 and creates execution-policy-bypass shortcuts.
Dual-use files needing an explicit labeling policy (15)
2708.ps1 - PE parser and process-memory inspection; no direct injection or execution in this file.
2781.ps1 - Base64/GZip decoding and writing bytes to disk; payload-staging pattern without execution context.
4228.ps1 - local-administrator enumeration across domain computers.
4232.ps1 - SMB host scanner.
4233.ps1 - ARP/NetBIOS scanner with embedded DLL.
4234.ps1 - reports user idle time; can support anti-analysis but is not harmful in isolation.
4235.ps1 - reverse DNS/IP-range reconnaissance.
4237.ps1 - raw packet sniffer.
4246.ps1 - full port scanner.
4247.ps1 - searches files for payment-card patterns; possible DLP or data-discovery use.
4261.ps1 - checks systems for known local privilege-escalation vulnerabilities.
4268.ps1 - enumerates recently accessed shortcut targets.
4273.ps1 - broad host/domain enumeration and reporting.
4276.ps1 - reads LAPS-managed local administrator passwords from Active Directory.
4277.ps1 - creates full process minidumps and could target LSASS, but accepts any process supplied by the caller.
Same-name collisions with malicious_pure
The following paths share filenames across the two folders, but their SHA-256 hashes and contents differ. The malicious_pure copies are short download/execute or in-memory shellcode-launcher samples and appear correctly malicious.
| Filename |
powershell_benign_dataset SHA-256 |
malicious_pure SHA-256 |
malicious_pure behavior |
181.ps1 / malicious_pure/181.ps1 |
a23db27f169af5564f9ed8d0f030f10744ab5b746df3190fe81ee580d45cd200 |
33b02ce9c12c837c63aa005ea8d516d840df90f0e01a076d483d2baf2ab4c7a3 |
downloads an executable to AppData and starts it |
1745.ps1 / malicious_pure/1745.ps1 |
74b336be8ffdc5474c74d8ca4b4638eb40698eec476ba41a57abb8cd6d97b5ad |
1c3d4563f81d65f9fa2b34ce96f3d1e783311f340d5ef29ae3f244bb6e0757df |
allocates executable memory and starts embedded shellcode |
2672.ps1 / malicious_pure/2672.ps1 |
037af879268d176fe2c4b6d80a08c32d36518b5ef63863ebb8e37ecca1e9f221 |
dd925c40684ba6a912132e426328c5408bef6f55f6d593245b92b21dc7da9781 |
allocates executable memory and starts embedded shellcode |
2708.ps1 / malicious_pure/2708.ps1 |
f9df8326e8467506fcddbc0b28b43b3b15c4b4b261bd034556766fef203d6f12 |
7347d4c91d2961086d51666c685a45190d36c32a48f33c861fcc60e7254b2b8d |
downloads an executable to AppData and starts it |
2781.ps1 / malicious_pure/2781.ps1 |
dcc29321cf271f871fdfbc9b416bb2790343f7bce591f3b8702400ceeb01cbcb |
9f3570737e2b78dec2d1119cdbbed5ff61019561c2cf8878778d30e647297f3c |
allocates executable memory and starts embedded shellcode |
3151.ps1 / malicious_pure/3151.ps1 |
f95c3acdf4102844308e23652b13d58a80b6d902c884c5752585993bbe4528b3 |
33b02ce9c12c837c63aa005ea8d516d840df90f0e01a076d483d2baf2ab4c7a3 |
downloads an executable to AppData and starts it |
Suggested resolution
- Move or relabel the 47 high-confidence offensive-capability files, or document that
powershell_benign_dataset intentionally includes offensive tools.
- Add an explicit
dual_use or offensive_tool category for the 15 ambiguous security utilities.
- Use full relative path and/or content hash as sample identity so same-name files across folders cannot be accidentally joined.
Potential label issues and dual-use samples in
powershell_benign_datasetFirst, thank you for publishing MPSD. I reviewed a group of samples that repeatedly surfaced as high-confidence false positives.
I reviewed the 64 files below at commit
37cf29c461f5dfe0384e8e1256d15b8912e7405e.Summary
powershell_benign_datasetcontain direct offensive capabilities such as keylogging, credential theft, C2, exploitation, privilege escalation, process injection, lateral movement, or payload generation. I recommend moving or relabeling these as malicious/offensive.powershell_benign_datasetandmalicious_pure, but the paired files are not byte-identical. These are filename collisions, not duplicate samples or direct cross-folder label conflicts.High-confidence offensive/malicious-capability files (47)
181.ps1- functional keylogger using keyboard-state APIs and logging keystrokes to disk.3151.ps1- obfuscated dnscat-style C2 with command execution and upload/download support.4226.ps1- Cred-Popper fake Outlook/domain credential prompt.4227.ps1- PsUACme UAC-bypass toolkit with embedded shellcode/DLL material.4229.ps1- extracts stored Wi-Fi passwords withkey=clear.4230.ps1- finds and decrypts Group Policycpasswordvalues.4236.ps1- DaisyChain HTTP relay/C2 with domain fronting and encoded scripts.4238.ps1- enumerates service-permission weaknesses for privilege escalation.4239.ps1- WMI remote execution and remote-host reconnaissance.4240.ps1- EventVwr registry-hijack UAC bypass.4242.ps1- converts DLLs to reflective-injection shellcode.4243.ps1- background keylogger.4244.ps1- dumpsNTDS.ditthroughntdsutilIFM.4245.ps1- named-pipe payload proxy/relay.4248.ps1- SMB client with NTLM-hash authentication and pass-the-hash capability.4249.ps1- Powercat with command execution, relays, DNS mode, and payload generation.4250.ps1- EternalBlue/MS17-010 exploit and payload delivery.4251.ps1- service-abuse and privilege-escalation toolkit.4252.ps1- local/remote shellcode injection with Metasploit payload support.4253.ps1- token impersonation/duplication and process creation with stolen tokens.4255.ps1- enables sensitive token privileges used for privilege escalation.4256.ps1- SharpSocks HTTP proxy/C2 channel with domain fronting.4257.ps1- WMI remote command execution across target ranges.4258.ps1- remote PowerShell sessions through WinRM.4259.ps1- WMI event-subscription persistence.4262.ps1- pass-the-hash SMBExec/WMIExec remote command execution.4263.ps1- PsExec-style SMB/NTLM remote execution.4264.ps1- MS16-032 local privilege-escalation exploit.4265.ps1- SMBExec pass-the-hash remote execution.4266.ps1- NTLM relay/WPAD spoofing and credential interception.4267.ps1- process injection through remote-thread/APC methods.4269.ps1- NBNS/LLMNR/mDNS spoofing for credential harvesting.4270.ps1- Active Directory password spraying.4271.ps1- DCSync credential replication with injection support.4274.ps1- multiple UAC-bypass and DLL-hijacking methods.4275.ps1- named-pipe/token escalation to SYSTEM.4278.ps1- MS16-032 local privilege-escalation exploit.4279.ps1- Pipekat SMB relay/pass-the-hash and shellcode injection.4281.ps1- WMIExec remote execution with NTLM-hash authentication.4282.ps1- Inveigh NTLM capture/relay and name-resolution spoofing.4283.ps1- retrieves Group Policy autologon credentials.4285.ps1- PoshMSDaisy named-pipe C2 relay.4286.ps1- PoshC2 server component.4287.ps1- generates implants, encoded payloads, and delivery artifacts.4288.ps1- PoshC2 implant handler and tasking interface.4289.ps1- PoshC2 implant viewer/management component.4290.ps1- downloads and installs PoshC2 and creates execution-policy-bypass shortcuts.Dual-use files needing an explicit labeling policy (15)
2708.ps1- PE parser and process-memory inspection; no direct injection or execution in this file.2781.ps1- Base64/GZip decoding and writing bytes to disk; payload-staging pattern without execution context.4228.ps1- local-administrator enumeration across domain computers.4232.ps1- SMB host scanner.4233.ps1- ARP/NetBIOS scanner with embedded DLL.4234.ps1- reports user idle time; can support anti-analysis but is not harmful in isolation.4235.ps1- reverse DNS/IP-range reconnaissance.4237.ps1- raw packet sniffer.4246.ps1- full port scanner.4247.ps1- searches files for payment-card patterns; possible DLP or data-discovery use.4261.ps1- checks systems for known local privilege-escalation vulnerabilities.4268.ps1- enumerates recently accessed shortcut targets.4273.ps1- broad host/domain enumeration and reporting.4276.ps1- reads LAPS-managed local administrator passwords from Active Directory.4277.ps1- creates full process minidumps and could target LSASS, but accepts any process supplied by the caller.Same-name collisions with
malicious_pureThe following paths share filenames across the two folders, but their SHA-256 hashes and contents differ. The
malicious_purecopies are short download/execute or in-memory shellcode-launcher samples and appear correctly malicious.powershell_benign_datasetSHA-256malicious_pureSHA-256malicious_purebehavior181.ps1/malicious_pure/181.ps1a23db27f169af5564f9ed8d0f030f10744ab5b746df3190fe81ee580d45cd20033b02ce9c12c837c63aa005ea8d516d840df90f0e01a076d483d2baf2ab4c7a31745.ps1/malicious_pure/1745.ps174b336be8ffdc5474c74d8ca4b4638eb40698eec476ba41a57abb8cd6d97b5ad1c3d4563f81d65f9fa2b34ce96f3d1e783311f340d5ef29ae3f244bb6e0757df2672.ps1/malicious_pure/2672.ps1037af879268d176fe2c4b6d80a08c32d36518b5ef63863ebb8e37ecca1e9f221dd925c40684ba6a912132e426328c5408bef6f55f6d593245b92b21dc7da97812708.ps1/malicious_pure/2708.ps1f9df8326e8467506fcddbc0b28b43b3b15c4b4b261bd034556766fef203d6f127347d4c91d2961086d51666c685a45190d36c32a48f33c861fcc60e7254b2b8d2781.ps1/malicious_pure/2781.ps1dcc29321cf271f871fdfbc9b416bb2790343f7bce591f3b8702400ceeb01cbcb9f3570737e2b78dec2d1119cdbbed5ff61019561c2cf8878778d30e647297f3c3151.ps1/malicious_pure/3151.ps1f95c3acdf4102844308e23652b13d58a80b6d902c884c5752585993bbe4528b333b02ce9c12c837c63aa005ea8d516d840df90f0e01a076d483d2baf2ab4c7a3Suggested resolution
powershell_benign_datasetintentionally includes offensive tools.dual_useoroffensive_toolcategory for the 15 ambiguous security utilities.