此过程略
1.生成c#的payload
首先创建一个监听
再生成一个payload
输出选择c#的
其实和其他payload生成是一样的,输出到桌面上
打开之后发现生成成功
这里是我用的荔枝给我发的模板,他说很老了,但是我们只是为了复现去掌握他的方法,免杀被杀了但是不能扼杀我们的思路
我们进行操作:
将原来生成的payload给注释掉,然后把刚才生成的payload复制进去
一定要注意一点,字节数一定要相同
还要注意一点就是,要将buf改成shellcode,要不然下面转换文件的时候会报错
模板前面给出了要执行的命令和位置
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /unsafe /out:shellcodeLauncher.exe shellcodeLauncher.cs
注意:需要一个.net环境
下面有一个csc.exe
咱们将刚才生成的东西给进行放到.net下,进行转换成exe文件
目录:C:\Windows\Microsoft.NET\Framework64\v4.0.30319
然后使用csc命令进行转换:
csc.exe /unsafe /out:chaosec.exe shellcodeLauncher.cs
发现生成成功
csc命令详解:
out:是指定生成后exe的文件名称
/unsafe:是使用非安全模式来编译代码,非安全模式的代码允许其操作内存地以及这些地址上的直接,会引起不安全代码的执行,有安全风险,所以是定为不安全模式
运行查看是否能正常上线
发现可以成功上线
在检测一下他的免杀效果
发现过腾讯管家是没问题的
刚才运行的时候,发现一直有这个弹窗,所以很鸡肋,我们要借助windows上面的定时任务进行持久上线
1.定时任务介绍:
定时任务的参数:
schtasks ( schdule task:计划任务)
schtasks /create /RL HIGHEST /F /RU "SYSTEM" /TN "WindowsS" /TR "C:/chaosec.exe" /SC DAILY /MO 1 /ST 00:00
/RL:设置任务的运行级别。有效值为LIMITED和HIGHEST。默认为LIMITED。
/F∶如果指定的任务已存在,则强制创建任务并禁止警告的值。
/Ru∶指定运行任务的用户上下文。
/TN:指定唯—标识计划任务的名称。
/TR:指定要在计划的时间运行的任务的路径和文件名。
/SC:指定计划频率,DAILY为每天。
/MO:对于MINUTE,HOURLY,DAILYWEEKLY有效,可选参数,默认为1.
/ST:指定运行任务的开始时间,格式为HH : mm ( 24小时制)。
2.操作:
首先将chaosec.exe放到c盘下
3.执行命令.
发现成功
4.查看计划任务
schtasks /query |findstr "WindowsS" //这里我命令执行不可以,那么我们就直接用图形化查看,发现创建成功
5.立刻运行,执行、删除会话
schtasks /run /TN "chaosec"
schtasks /delete /F /TN "chaosec"
发现成功上线