ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

命令执行漏洞

2022-02-21 10:36:02  阅读:175  来源: 互联网

标签:命令 cat 漏洞 管道 过滤 绕过 执行


目录

简介

常见的管道符

Windows支持的管道符

Linux系统支持的管道符

空格过滤

${IFS}

$IFS$1

<>、<

%09(需要php环境)

黑名单绕过

变量拼接

Base编码

单引号、双引号

反斜线

$1、$2等和$@

内联执行绕过

读文件绕过(cat被过滤时)

通配符绕过

命令换行

命令无回显

利用dnslog

参考文章


简介

命令执行直接调用操作系统命令。其原理是,在操作系统中,“&、|、||”都可以作为命令连接符使用,用户通过浏览器提交执行命令,由于服务器端没有针对执行函数做过滤,将用户的输入作为系统命令的参数拼接到命令行中,在没有过滤用户输入的情况下,造成命令执行漏洞。

漏洞常存在于:

1、使用用户提供的邮箱地址发送邮件的应用程序

2、服务器监控类型的应用,他们会返回系统的健康状况,这些健康状况都是通过执行系统命令取得的

3、使用第三方软件根据用户提供的输入实时生成报告的应用程序

常见的管道符

Windows支持的管道符

(1)| 直接执行后面的语句

(2)||  如果前面的命令是错的那么就执行后面的语句,否则只执行前面的语句

(3)& 前面和后面命令都要执行

(4)&& 如果前面为假,后面的命令也不执行,如果前面为真则执行两条命令

Linux系统支持的管道符

|、||、&、&&这四种管道符都存在且用法和Windows系统下一样,多了一个;管道符,作用和&一样

空格过滤

${IFS}

$IFS$1

<>、<

%09(需要php环境)

黑名单绕过

如果过滤了cat或者flag

变量拼接

a=c;b=at;c=fl;d=ag;$a$b $c$d

Base编码

`echo "Y2F0IGZsYWc="|base64 -d`
Y2F0IGZsYWc=  base64解吗为 cat flag

单引号、双引号

反斜线

$1、$2等和$@

内联执行绕过

``内的输出会作为前面命令的输入

读文件绕过(cat被过滤时)

基础知识:

(1)more:一页一页的显示档案内容

(2)less:与 more 类似,但是比 more 更好的是,他可以[pg dn][pg up]翻页

(3)head:查看头几行

(4)tac:从最后一行开始显示,可以看出 tac 是 cat 的反向显示

(5)tail:查看尾几行

(6)nl:显示的时候,顺便输出行号

(7)od:以二进制的方式读取档案内容

(8)vi:一种编辑器,这个也可以查看

(9)vim:一种编辑器,这个也可以查看

(10)sort:可以查看

(11)uniq:可以查看

(12)file -f:报错出具体内容

通配符绕过

?代表一个字符*代表一串字符

命令换行

把命令写入文件,然后使用sh执行该文件

命令无回显

利用dnslog

参考文章

https://blog.csdn.net/qq_45836474/article/details/107248010

标签:命令,cat,漏洞,管道,过滤,绕过,执行
来源: https://blog.csdn.net/weixin_44368248/article/details/123041736

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有