Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Merlin is a cross-platform post-exploitation HTTP/2 Command & Control server and agent written in golang.

License

NotificationsYou must be signed in to change notification settings

Ne0nd0g/merlin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

813 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CodeQLGoReportCardLicense: GPL v3ReleaseDownloadsTwitter Follow

Merlin

Merlin Logo

Merlin is a cross-platform post-exploitation Command & Control server and agent written in Go.

Highlighted features:

  • merlin-cli command line interface over gRPC to connect to the Merlin Server facilitating multi-user support
  • Supported Agent C2 Protocols: http/1.1 clear-text, http/1.1 over TLS, HTTP/2, HTTP/2 clear-text (h2c), http/3 (http/2 over QUIC)
  • Peer-to-peer (P2P) communication between Agents with bind or reverse for SMB, TCP, and UDP
  • Configurable agent data encoding and encryption transforms: AES, Base64, gob, hex, JWE, RC4, and XOR
    • JWE transform usePBES2_HS512_A256KW PBES2 (RFC 2898) with HMACSHA-512 as the PRF and AES Key Wrap (RFC 3394) using 256-bit keys for the encryption scheme
  • Configurable agent authenticators:
    • None: No authentication
    • OPAQUE: Asymmetric Password Authenticated Key Exchange (PAKE)
  • Encrypted JWT for message authentication
  • Configurable Agent message datapaddingto combat beaconing detections based on a fixed message size
  • Execute .NET assemblies in-process withinvoke-assembly or in a sacrificial process withexecute-assembly
  • Execute arbitrary Windows executables (PE) in a sacrificial process withexecute-pe
  • Various shellcode execution techniques: CreateThread, CreateRemoteThread, RtlCreateUserThread, QueueUserAPC
  • IntegratedDonut,sRDI,andSharpGen support
  • Dynamically change the Agent'sJA3 hash
  • Mythic support
  • Documentation & Wiki

An introductory blog post can be found here:https://medium.com/@Ne0nd0g/introducing-merlin-645da3c635a

Supporting Repositories:

Quick Start

  1. Download the latest version of Merlin Server from thereleases section

    The Server package contains compiled versions of the CLI and Agent for all the major operating systems in thedata/bin directory

  2. Extract the files with 7zip using thex functionThe password is:merlin

  3. Start Merlin

  4. Start the CLI

  5. Configure alistener

  6. Deploy an agent. SeeAgent Execution Quick Start Guide for examples

  7. Pwn, Pivot, Profit

    mkdir /opt/merlin;cd /opt/merlinwget https://github.com/Ne0nd0g/merlin/releases/latest/download/merlinServer-Linux-x64.7z7z x merlinServer-Linux-x64.7zsudo ./merlinServer-Linux-x64./data/bin/merlinCLI-Linux-x64

Mythic

Merlin can be integrated and used as an agent with theMythic acollaborative, multi-platform, red teaming framework.

Visit theMerlin on Mythic repository in the MythicAgents organizationto get started.

Misc.

Slack

Join the#merlin channel in theBloodHoundGang Slack to ask questions,troubleshoot, or provide feedback.

JetBrains

Thanks toJetBrains for kindly sponsoring Merlin by providing a Goland IDEOpen Source license

JetBrains LogoGoLand Logo

About

Merlin is a cross-platform post-exploitation HTTP/2 Command & Control server and agent written in golang.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors15

Languages


[8]ページ先頭

©2009-2026 Movatter.jp