Skip to content

Commit

Permalink
Merge branch 'dev'
Browse files Browse the repository at this point in the history
  • Loading branch information
Ne0nd0g committed Jan 11, 2019
2 parents eb92bab + 4affa42 commit ca24c53
Show file tree
Hide file tree
Showing 5 changed files with 98 additions and 13 deletions.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ data/agents
data/temp
data/db
data/log
data/x509
data/bin/darwin
data/bin/dll/merlin.dll
data/bin/linux
Expand Down
21 changes: 21 additions & 0 deletions data/x509/server.crt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
-----BEGIN CERTIFICATE-----
MIIDXTCCAkWgAwIBAgIJAMXjCgaIHqtBMA0GCSqGSIb3DQEBCwUAMEUxCzAJBgNV
BAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX
aWRnaXRzIFB0eSBMdGQwHhcNMTYxMDIzMDAzODA3WhcNMjYxMDIxMDAzODA3WjBF
MQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50
ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
CgKCAQEAr+gMy078qmcT45NY2cIRsEstXdaMtqH+2WuMy1CofokSPmzpLON1gfIR
rrumgylZjbGVVA2Md3SGkmdc4rjbLxr/bT3GvDFcNNtVUYewjZebSSy2Hco8icsc
gDZPB8DV3z/B9x6V4wfnFyIyjjRou9P0jtSfSFDvIWDHqmhTsM1s8kAiwiK1TE0u
g8MBoysdmdmK/pVgS6ABo8W14gKDMRvKuArr3RxmIqujU363RGQ8KL9KxaSqpP+/
dSN0mjkoecUFgHvWPOsL1KqU4Ntj5qJdJNwlBPIDmH5+BcU/CvXdAD641N+zSNUD
PEH0e8PIPNeVtEYY6gIj2gpDgjpQBwIDAQABo1AwTjAdBgNVHQ4EFgQUtr9XjXfj
t85kkB8xMhZ4Dtl9FRAwHwYDVR0jBBgwFoAUtr9XjXfjt85kkB8xMhZ4Dtl9FRAw
DAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAP6y1atvDy/NdZjDig9wo
/GaDNvNA/70/C44N6aSo243eicL+0RrRrkh8cp9C6UVRQ/LpfH/Mmhm+MYXJq+dI
b02mUW7lHgLk+iksIvSa3AmagMAtpeQ6XtWY64COY2aU4jke9Fc6kJkKNR9B9uVP
8+1g1B13TG6yKy3SAHwlrCL1RYhhxsR8yhLAMrTu4oTBwXEbupwqKxKLdeoBujAR
xZ7H5ybC7dqGmP4jm1m9zQNkpyalZJbXyIQphWMxHb3/HSCY2j8g8HXGKdO8E1nC
NEDlULSeCu2dIhi6RyiFqREbKThHNPG0PEUvNVSZHO+zyHpgecQy9u1+fkxsIAJ4
OQ==
-----END CERTIFICATE-----
27 changes: 27 additions & 0 deletions data/x509/server.key
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEAr+gMy078qmcT45NY2cIRsEstXdaMtqH+2WuMy1CofokSPmzp
LON1gfIRrrumgylZjbGVVA2Md3SGkmdc4rjbLxr/bT3GvDFcNNtVUYewjZebSSy2
Hco8icscgDZPB8DV3z/B9x6V4wfnFyIyjjRou9P0jtSfSFDvIWDHqmhTsM1s8kAi
wiK1TE0ug8MBoysdmdmK/pVgS6ABo8W14gKDMRvKuArr3RxmIqujU363RGQ8KL9K
xaSqpP+/dSN0mjkoecUFgHvWPOsL1KqU4Ntj5qJdJNwlBPIDmH5+BcU/CvXdAD64
1N+zSNUDPEH0e8PIPNeVtEYY6gIj2gpDgjpQBwIDAQABAoIBAHFlnhnSKX+QQ3oJ
mtWGDfEgBXbgwIVbmPaAJptKu9QWePRVMVwGpdHHQy7pOUaEeX6mZCVzNoIrVDU8
/NwLXwDW3qKFmH/pMg/A9RdB6cbdXPWnJR+/J5eMoCrm17ufzD/G0juENAvPJGH9
Yanaj0nGMXmCB8yOoBlcUlrANnNaZ/PXhn2lEW+dmVoY9fHVy4ARDyPvnSyAH2Em
EoClheLU9+T/CcJShNJC0EQ8UCn2a02+y7XQ4hBxHpjwBxo4aqs9D0DfZoW6AwvW
HnyL9ozAv9LEx9DHjmWXAYCfqnz5OTjVefPbp+vKWujOGpdxaCUsFigOkIAjDh+0
KngpkIECgYEA5FCjJe3pcc9g11f+0DpZNmJhnEkS6SnNXTBhMrxi14bua+ZnJj07
/vBKsK3aQf27PROpbl1CC2HPBAF3AfMXD/3nW1JtjfuaH0UYZs1QHog96sTKk5Ny
6JfOFOKZXm97c0KxgqoBNoJyac3J7sF2jHzYWDGbc3cGLQQZkwOZi/kCgYEAxTyL
bN+YCgQUR1I99rBAGsJfQ12he6n1eQ6s9hcthO44Qsm+opGAeZatVIZx3w90dyGg
vCS73dYmOAWX/areZNv+qV5MF6bFvujnlH1BLm91xfl3WfQYALKcTH2SSaBBOQKK
Vasmc2wofCIQptPGkguX6yAJ2V/c/7CmBhORu/8CgYByNUAXRhZjfvgTYIovgTCF
OttXAVq7VdTLy9qjNYdABtgXE27/utvbIDpMfPrTzeeumrpDYdUauneCqnTsfbxI
nJrxnJ7+yiADil21dvif/UjzujMXdUeiv+Uvn1ZW3e9j7bW8BeyLZt9yu6VKkG4L
wpu6Kj53mM93Dzj3yHIziQKBgE+lyGPZ0wrQZOP8ORuCRxDHRzLr/4bxtjgBjiT+
bRpOHJgT4hDCExCGoU4N0LQUCKMHCGKRru/BR8O9tofwVUiDck4wzyeJ6DbU1Jep
EQZQak3dFK5VnM/DUMyutMFYnp4IAZbgu3FGzv55vyGvSXO2jM2dLX0DcjoqupCf
nG0/AoGADgm7TSi/ZypZg/BEJS/6/cv9gpYkTv1L4eCENYK2t6dFJZUVwGTCA08Y
noB9k0JpSUpk53Y/SGRZHhl1YuAwmcIG6Jjz8SPmOfir/+8HlunEXvzybWHE8D20
id+f6OCGccq5OJ0/tZA6pG8WIc8t1jr3tNhMizoX/RALxNovIM4=
-----END RSA PRIVATE KEY-----
9 changes: 9 additions & 0 deletions docs/CHANGELOG.MD
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,15 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## 0.6.5 - 2019-01-10

### Fixed
- [Issue 41](https://github.com/Ne0nd0g/merlin/issues/41) Error when downloading a file using a path containing a space

### Changed
- Updated `download` command to correctly parse a remote file path containing a space
- Removed `data\x509` from .gitignore so that certificates WILL be distributed when cloning the repository to facilitate easy testing

## 0.6.4 - 2019-01-01

### Added
Expand Down
53 changes: 41 additions & 12 deletions pkg/cli/cli.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ import (
"github.com/fatih/color"
"github.com/olekukonko/tablewriter"
"github.com/satori/go.uuid"
"github.com/mattn/go-shellwords"

// Merlin
"github.com/Ne0nd0g/merlin/pkg"
Expand Down Expand Up @@ -219,13 +220,25 @@ func Shell() {
}
}
case "download":
if len(cmd) > 1 {
m, err := agents.AddJob(shellAgent, "download", cmd[1:])
if err != nil {
message("warn", err.Error())
} else {
message("note", fmt.Sprintf("Created job %s for agent %s", m, shellAgent))
if len(cmd) >= 2 {
arg := strings.Join(cmd[1:]," ")
argS, errS := shellwords.Parse(arg)
if errS != nil {
message("warn",fmt.Sprintf("There was an error parsing command line argments: %s\r\n%s", line, errS.Error()))
break
}
if len(argS) >= 1 {
m, err := agents.AddJob(shellAgent, "download", argS[0:1])
if err != nil {
message("warn", err.Error())
break
} else {
message("note", fmt.Sprintf("Created job %s for agent %s", m, shellAgent))
}
}
} else {
message("warn", "Invalid command")
message("info", "download <remote_file_path>")
}
case "execute-shellcode":
if len(cmd) > 2 {
Expand Down Expand Up @@ -413,12 +426,26 @@ func Shell() {
}
}
case "upload":
if len(cmd) == 3 {
m, err := agents.AddJob(shellAgent, "upload", cmd[1:3])
if err != nil {
message("warn", err.Error())
} else {
message("note", fmt.Sprintf("Created job %s for agent %s", m, shellAgent))
if len(cmd) >= 3 {
arg := strings.Join(cmd[1:]," ")
argS, errS := shellwords.Parse(arg)
if errS != nil {
message("warn",fmt.Sprintf("There was an error parsing command line argments: %s\r\n%s", line, errS.Error()))
break
}
if len(argS) >= 2 {
_, errF := os.Stat(argS[0])
if errF != nil{
message("warn", fmt.Sprintf("There was an error accessing the source upload file:\r\n%s", errF.Error()))
break
}
m, err := agents.AddJob(shellAgent, "upload", argS[0:2])
if err != nil {
message("warn", err.Error())
break
} else {
message("note", fmt.Sprintf("Created job %s for agent %s", m, shellAgent))
}
}
} else {
message("warn", "Invalid command")
Expand Down Expand Up @@ -647,6 +674,7 @@ func menuHelpMain() {
fmt.Println()
table.Render()
fmt.Println()
message("info", "Visit the wiki for additional information https://github.com/Ne0nd0g/merlin/wiki/Merlin-Server-Main-Menu")
}

// The help menu while in the modules menu
Expand All @@ -671,6 +699,7 @@ func menuHelpModule() {
fmt.Println()
table.Render()
fmt.Println()
message("info", "Visit the wiki for additional information https://github.com/Ne0nd0g/merlin/wiki/Merlin-Server-Module-Menu")
}

// The help menu while in the agent menu
Expand Down

0 comments on commit ca24c53

Please sign in to comment.