当前位置: 首页 > news >正文

内网渗透-CS免杀与应用开发

由于我没有公网服务器,我使用老师的电脑来操作

首先我们搞一个公网环境47.96.116.171

安装Java环境,我们电脑上的版本为17.0.6

我们进入到cobalstrike的目录

 将teamserver启动起来,确认启动正常

然后在Kali启动我们的客户端,打开cobaltstrike的界面,建立与我们的公网服务器的来连接,端口是50050,用户名随便输,密码是我们刚刚启动teamserver的密码

然后去连接上我们CS的服务器端

进入到我们的CobaltStrike,第一步就是进入到listener

然后新建listener,端口号是云服务器那边放行的就可以了

然后我们建好了

 我们选择Stager Payload Generator来生成payload

监听器选择HTTP,输出类型选择Python

然后我们保存到Muma18的目录下,方便使用

然后我们就在Muma18的目录下得到了payload.py

然后去查看一下,这就是Cobalt Strike的ShellCode

接下来该怎么办呢

我们创建一个python文件,名称叫csshellenc.py

代码前面引入base 64这个库,然后再输入Cobalt Strike的ShellCode,后面加上以下代码就可以了

然后我们运行一下,输出我们的加密的字符串,发现可以走通

然后再新建一个python文件,文件名称叫做csshelldec.py

先引入base64和ctypes,然后再输入加过密的字符串

再做上面那一步的操作之前,我们先将这段加载器代码放到我们的csshellenc.py里面,将csshellenc.py里面的加密代码先给注释了,看看可不可以上线,也就是看看加载器代码有没有区别

CS已经正常启动,如果我们能够运行python能够上线,说明这段加载器代码不需要改

运行之后发现没有报错

上线成功

上线成功,我们将sleep修改为3秒钟,时间越长就很难被发现,隐蔽性就很好

然后首先来做一个文件浏览,看看3秒钟能不能浏览到我们受控端的文件

当然我们也可以看整个操作系统的文件

说明刚刚我们加入的加载器代码是可行的,然后我们再将木马直接断开

然后将这两段解密代码加入到我们的csshelldec.py即可

运行之后看看是否可以上线CS,如果上线就OK了

运行,然后发现没有报错

然后去CS界面上去看看,上线成功

上线成功之后我们就将木马给断开,然后将这段代码生成exe

然后我们去看看免杀的效果,发现没有被杀

然后把这个木马分发出去,如果点击了,CS界面那里会有显示,显示一些上线的电脑

代码我们已经搞定了,我们该如何去包装一下这个木马,把这个木马包装到正儿八经的应用程序当中去,然后再去做分发

我们新建一个python文件,文件名为lookbeauty.py

from tkinter import *
import tkinter.messagebox

def connect():

def look():
    tkinter.messagebox.showinfo('温馨提示','欢迎来到蜗牛学苑看美女,报名记得找我哦.')
    connect()

root = Tk()   #实例化一个主窗口
root.geometry("600x400+300+300")  # 定位窗口大小和位置
root.title("看美女")

label = Label(root,text='这是一个标签',background='gray')
#label.pack()  #自适应位置,不太受控
label.place(width=100,height=30,x=30,y=20)

entry = Entry(root,bg='white')
entry.place(width=200,height=30,x=200,y=20)

button = Button(root,bg='green',text="点我有惊喜",command=look)
button.place(width=100,height=30,x=450,y=20)

root.mainloop()  #启动窗口

运行结果如下:

将我们的csshelldec.py里面的代码放入进去,放到def connect():函数里面,然后在look函数里面调用connect()即可,还要记得引入base64和ctypes这两个库

然后我们去看看木马是否能够上线

在公网服务器上启动teamserver

然后在Kali这儿启动CS的客户端,点击connect

然后成功进入到CS界面中去

然后我们去点击按钮,看看木马能否上线

点击完之后发现代码也没有结束

上线成功

鼠标转圈的原因是主线程一直被占用,导致无法执行mainloop,程序一直在和木马进行通信,所以我们要另起一个子线程来连接木马,主线程用来放窗口,子线程用来连接木马

解决的办法是让子线程去调用connect函数

import threading

然后在look函数当中加上这么一段代码

threading.Thread(target=connect).strat()

按照上面的步骤,然后我们再来试试看,上线成功

没有出现鼠标转圈的情况

相关文章:

  • 操作系统实验7 显示进程列表
  • 中科亿海微SoM模组——AI图像推理解决方案
  • 金融级密码管理器——抗内存扫描的密钥保险箱
  • 【C++】 动态内存管理
  • python中析构函数和封装
  • Spring Boot框架
  • VMware异常记录
  • 【踩坑】修复Idea升级后无法正常使用,报错 java.lang.ClassNotFoundException: com.liceb.b.Z@
  • MySQL InnoDB事务状态详解:information_schema.innodb_trx表解析
  • Neo4j GDS-06-neo4j GDS 库中社区检测算法介绍
  • 7-7 用给定的n个数字构成一个最大素数
  • 函数参数是定义还是赋值
  • 从 Flask 项目打包为多平台 Docker 镜像并上传 Docker Hub(含 GitHub Actions)
  • 需求导向的K8S网络原理分析:Kube-proxy、Flannel、Calico的地位和作用
  • Langchain+NebulaGraph结合大模型的KBQA源码分析
  • C#基础学习(七)函数的重载
  • mac安装talib
  • 2025.03.27【基因分析新工具】| MAST:解锁基因表达差异分析与网络构建
  • 蓝桥与力扣刷题(蓝桥 山)
  • Es6进阶
  • flow创意博客wordpress主题/宁波seo公司网站推广
  • 简洁网站首页html代码/站外seo推广
  • 希尔顿酒店网站建设的优点/桔子seo工具
  • 唐山网站建设托管/上海知名网站制作公司
  • 海口 网站开发/产品网络推广深圳
  • 河北建设厅注册中心网站/百度搜索关键词排名优化推广