当前位置: 首页 > news >正文

[ACTF2020 新生赛]Exec1

拿到题目,不知道是sql注入还是命令执行漏洞

先ping一下主机

有回显,说明是命令执行漏洞

我们尝试去查看目录

127.0.0.1|ls,发现有回显,目录下面有个index.php的文件

我们之间访问index.php

输入127.0.0.1;cat index.php

发现又弹出了一个ping的地方

我们用ls /去查看index.php下的目录,在Linux下,/是根目录

相关知识:Linux中根目录用/表示。而windows表示目录的方式与Linux有所不同,Windows下有磁盘分区的概念,而Linux下只有目录的概念,所以‘/’所表示的意义在两个系统中有所不同。
   
   ‘/’在linux中表示根目录。在Linux系统中,除根目录(root)以外,所有文件和目录都包含在相应的目录文件中。Linux文件系统采用带链接的树形目录结构,即只有一个根目录(通常用“/”表示),其中含有下级子目录或文件的信息;子目录中又可含有更下级的子目录或者文件的信息。这样一层一层地延伸下去,构成一棵倒置的树。    

   ‘/’在windows中也表示根目录,但此根目录非彼根目录。windows对磁盘分区后会有多个磁盘,通常系统会装在C盘。windows有多个磁盘所以就会有‘多个根目录’,在dos命令模式下,在D盘的某文件夹中输入‘cd/’命令回车后会直接回到D盘的根目录。其它磁盘下也会回到该磁盘的目录。在哪个磁盘下使用‘/’,它就表示哪个磁盘的根目录

 

 

 于是我们用cd ../回到上一级目录,

输入 127.0.0.1;cd ../../../;cat flag

得到flag

当然我们也可以用命令

127.0.0.1;cat /flag

总结:

什么是命令注入?

原理:web应用在调用这些函数执行系统命令的时候,在没有做好过滤用户输入的情况下,如果用户将自己的输入作为系统命令的参数拼接到命令行中,就会造成命令注(命令执行)的漏洞

命令注入的形成需要如下三个条件?

危害:继承嵌入式应用程序或者 web应用程序的权限去执行系统命令读写执行文件,导致系统有可能会被恶意攻击或者泄露系统用户信息

命令注入相关的特殊字符

相关文章参考:https://www.cnblogs.com/lyxhhz/p/15979041.html

 

http://www.lryc.cn/news/188874.html

相关文章:

  • DeepFace【部署 03】轻量级人脸识别和面部属性分析框架deepface在Linux环境下服务部署(conda虚拟环境+docker)
  • vuex的求和案例和mapstate,mapmutations,mapgetters
  • Docker 网络访问原理解密
  • 统信UOS离线安装nginx
  • 机器学习基础-手写数字识别
  • idea 插件推荐(持续更新)
  • 实现Promise所有核心功能和方法
  • 学习总结1
  • 使用 Apache Camel 和 Quarkus 的微服务(二)
  • pid-limit参数实验
  • jvm--执行引擎
  • day13|二叉树理论
  • php+html+js+ajax实现文件上传
  • 日期时间参数,格式配置(SpringBoot)
  • JAVA 泛型的定义以及使用
  • Day-08 基于 Docker安装 Nginx 镜像-负载均衡
  • 3、在 CentOS 8 系统上安装 PostgreSQL 15.4
  • sap 一次性供应商 供应商账户组 临时供应商 <转载>
  • 总结html5中常见的选择器
  • Java基础面试-JDK JRE JVM
  • OpenCV实现图像傅里叶变换
  • 快手新版本sig3参数算法还原
  • Linux 安全 - LSM机制
  • uni-app:实现简易自定义下拉列表
  • 排序算法——直接插入排序
  • 手动抄表和自动抄表优缺点对比
  • HiSilicon352 android9.0 emmc添加新分区
  • networkX-04-查找k短路
  • Linux虚拟机搭建RabbitMQ集群
  • C之fopen/fclose/fread/fwrite/flseek