venom-crypt基于原版改动
2024-09-17 00:00:00 # tools

venom-crypt基于原版改动

原版

  • 明文传输、自定义密钥的AES-CTR加密

  • 原版非加密对比加密

  • 命令数据包加密后增加16字节

修改版

  • 密文传输、固定密钥00theway的AES-CTR加密

  • 基于原版非加密传输数据包增加100字节

  • 加密位置

myConn/aesCrypto.Encrypt()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
func aes256key() []byte {
key := []byte("3b762cc137d55f4dcf4fe184ccc1dc15") //明文:00theway
return key
}

func (hrc *AesCrypt) Encrypt(dst, plainText []byte) ([]byte, error) {
block, err := aes.NewCipher(aes256key())
if err != nil {
return nil, err
}

dst = make([]byte, aes.BlockSize+len(plainText))
iv := dst[:aes.BlockSize]
if _, err := io.ReadFull(rand.Reader, iv); err != nil {
return nil, err
}

encryptStream := cipher.NewCTR(block, iv)
encryptStream.XORKeyStream(dst[aes.BlockSize:], plainText)
return dst, nil
}

功能

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
(admin node) >>> help

help Help information.
exit Exit.
show Display network topology.
getdes View description of the target node.
setdes [info] Add a description to the target node.
goto [id] Select id as the target node.
listen [lport] Listen on a port on the target node.
connect [rhost] [rport] Connect to a new node through the target node.
sshconnect [user@ip:port] [dport] Connect to a new node through ssh tunnel.
shell Start an interactive shell on the target node.
upload [local_file] [remote_file] Upload files to the target node.
download [remote_file] [local_file] Download files from the target node.
socks [lport] Start a socks5 server.
lforward [lhost] [sport] [dport] Forward a local sport to a remote dport.
rforward [rhost] [sport] [dport] Forward a remote sport to a local dport.