目录

  1. 1. 前言
  2. 2. 什么是软连接
  3. 3. 创建软连接
  4. 4. 应用

LOADING

第一次加载文章图片可能会花费较长时间

要不挂个梯子试试?(x

加载过慢请开启缓存 浏览器默认开启

linux软连接

2023/5/27 Linux 文件上传
  |     |   总文章阅读量:

前言

打CISCN时遇到的一个姿势,是linux的一个常用命令,可以在文件上传但是不知道传入的临时文件名的情况中利用

可以参考的题目深育杯2021web-zipzip

参考文章linux中软连接


什么是软连接

软连接是linux中一个常用命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接。

简单来说,就是windows里面的快捷方式。

创建软连接

ln -s target source

ln -s:表示创建一个软连接;
target:表示目标文件(夹),即源文件。
source:表示当前目录的软连接名,即被创建出来的软连接名称以及放置在何处。

实操:

这里路径名好像必须是绝对路径才行

image-20230527182008102

和windows快捷方式一样,源文件被删除的话软连接也会失效

应用

众所周知文件上传题中的文件大多数情况下都会被上传到某个特定的文件夹中,但是如果我们不知道文件夹的名称且上传成功后没有回显的时候怎么办呢?

这个时候就需要用到我们的软连接

原理我这里大概形容一下:(纯脑测,尚未经过本人测试)

我们在本地的kali路径下创建一个软连接,指向网页的主目录/var/www/html

ln -s /var/www/html cmd

然后进行上传,此时这个软连接的位置在上传文件的文件夹中(假设在/tmp/uploads)

这个时候那边应该为/tmp/uploads/cmd,指向/var/www/html

此时我们再写一个具有一句话木马的php文件,抓包上传时取名为/cmd/1.php(即在cmd文件夹下的1.php)

上传文件,实际上是传入了/tmp/uploads/cmd这个目录下,但是这是一个软连接,访问之后会跳转至指向的文件夹,也就是说最后被传到了/var/www/html