极客之命令注入实操第二篇

简介: 极客之命令注入实操第二篇

极客之命令注入实操第二篇
长度限制绕过

极客之命令注入实操第二篇

命令注入通常指因为Web应用在服务器上拼接系统命令而造成的漏洞。 该类漏洞通常出现在调用外部程序完成一些功能的情景下。比如一些Web管理界面的配置主机名IP掩码网关、查看系统信息以及关闭重启等功能,或者一些站点提供如ping、nslookup、提供发送邮件、转换图片等功能都可能出现该类漏洞。

wget\ >foo.\ >com ls -t > a sh a

上面的方法为通过命令行重定向写入命令,接着通过ls按时间排序把命令写入文件,最后执行 直接在Linux终端下执行的话,创建文件需要在重定向符号之前添加命令 这里可以使用一些诸如w,[之类的短命令,(使用ls /usr/bin/?查看) 如果不添加命令,需要Ctrl+D才能结束,这样就等于标准输入流的重定向 而在php中 , 使用 shell_exec 等执行系统命令的函数的时候 , 是不存在标准输入流的,所以可以直接创建文件

常用符号编辑
命令分隔符

%0a / %0d / \n / \r
;
& / &&
通配符

  • 0到无穷个任意字符
    ? 一个任意字符
    [ ] 一个在括号内的字符,e.g. [abcd]
    [ - ] 在编码顺序内的所有字符
    [^ ] 一个不在括号内的字符
    防御编辑
    不使用时禁用相应函数
    尽量不要执行外部的应用程序或命令
    做输入的格式检查
    转义命令中的所有shell元字符
    shell元字符包括 #&;,|*?~<>^()[]{}$`

命令行注入,用户输入的字符串被直接作为系统命令在命令行执行。 存储型命令行注入,来自存储设备的字符串被直接作为命令行使用。

阅读我的更多文章

相关文章
|
大数据 Java Linux
黑马程序员-大数据入门到实战-前置章节
黑马程序员-大数据入门到实战-前置章节
86 0
|
2月前
|
开发者
开发项目小问题总结,带有详解解释,让自己的代码走向完美之路,持续更新
这篇文章总结了开发项目中遇到的小问题及解决方案,包括字符串比较、资源管理、代码优化、异常处理等方面的内容,旨在帮助开发者写出更规范、高质量的代码。
36 2
开发项目小问题总结,带有详解解释,让自己的代码走向完美之路,持续更新
|
6月前
技术经验分享:GMU简单使用一
技术经验分享:GMU简单使用一
92 0
|
数据可视化 数据挖掘 Linux
​分享小知识点,顺便考考ChatGPT
​分享小知识点,顺便考考ChatGPT
​分享小知识点,顺便考考ChatGPT
|
SQL 存储 算法
IT类技术面试:从小白到高手的进阶指南
IT类技术面试:从小白到高手的进阶指南
248 0
|
缓存 监控 Java
膜拜!Alibaba最新发布SprinBoot:进阶原理实战与面试题分析指南
本书对Spring Boot的各项功能特性及其最佳实践、实现原理展开讨论,涵盖了核心容器、Web服务、内置缓存、数据访问、并发编程、监控和扩展等一系列核心主题,这些核心主题也广泛应用于Spring家族中的其他开发框架。
133 0
|
开发框架 监控 NoSQL
阿里内部SpringBoot进阶宝典横空出世,实战源码齐飞
想必大家都知道使用SpringBoot的最大好处就是简化配置,它实现了自动化配置。它简化了Spring应用开发,不需要配置就能运行Spring应用,无论是简单的Web系统,还是构建复杂系统,都只需要少量配置和代码就能完成。这有点像每个公司基于Spring框架做的内部开发框架,不同的是,Spring Boot更完善、更强大。
|
SQL 前端开发 Java
【JavaWeb】复习重点内容(一)
【JavaWeb】复习重点内容(一)
|
存储 Java 数据库连接
【JavaWeb】复习重点内容(三)
【JavaWeb】复习重点内容(三)
|
程序员 编译器 C++
C++(入门、核心、提高三篇)总结及补充
C++(入门、核心、提高三篇)总结及补充
114 0
C++(入门、核心、提高三篇)总结及补充

热门文章

最新文章