小白从0学习ctf(web安全)

文章目录


前言

此文章是小白为了学习ctf所写的,此文章将会采用刷题的形式来记录ctf的解题思路,禁止用此技术进行非法攻击。

一、baby lfi(bugku-CTF)

1、简介

此关卡是在bugkuCTF平台写的https://ctf.bugku.com/

2、解题思路

1、解题前置知识点

首先看到此题目的名字lfi就知道是考察web安全中的文件包含漏洞的知识点了。lfi是本地文件包含漏洞检测。
漏洞简介:

在web应用程序中,程序员为了减少代码的冗余,为了方便代码实现的逻辑性,常常会将文件进行包含。比如开发人员要频繁使用某一个函数,但是又不想在每一个文件都再重新编写一遍,这时就可以将重复使用的函数写在一个文件中,当某一个文件需要使用这些函数时直接包含写好的函数的文件就行了。最常见的php文件包含的是include函数。如果开发人员没有过滤文件包含的参数,攻击者可以包含任意文件达到读取敏感信息等等

2、漏洞利用

打开关卡页面发现有提示

翻译后如下

从提示可以看到我们可以包含/etc/passwd这个文件,这个文件可能有我们想要的flag。那么文件包含漏洞产生的重要条件之一是要有可控参数,刚好提示说使用language参数。那么我们猜想传参参数可能是language了。

最后思路知道了我们就可以尝试了。

我们在url地址加上参数language然后传参/etc/passwd就行了。

具体如下

bash 复制代码
http://82.157.146.43:10873/?language=/etc/passwd

最后得到flag

bash 复制代码
shellmates{10CA1_F11e_1Nc1US10n_m4y_r3ve4l_in7Er3st1nG_iNf0Rm4t1on}

二、baby lfi 2(bugku-CTF)

有了第一题的思路我们顺势做一个2.0版本的本地文件包含漏洞。

1.解题思路

1、漏洞利用

打开关卡页面如图所示

关卡提示到有一个languages的目录,但不会告诉我们这目录有什么。

那么此关卡肯定与languages目录有关了。我们的目的就是包含到/etc/passwd文件。这里我们尝试直接包含发现并不行。页面显示路径非法。

或者尝试这样

也是显示路径非法。我们想是不是得先访问languages目录再访问/etc/passwd目录呢,不然languages目录给的提示就用不上了是吧?

所以我们再尝试包含==./languages/etc/passwd==

发现页面不是显示路径非法,那么有戏。这个时候因为我们不知道languages目录距离根目录多远,所以就一个个试就行,本质是先访问languages目录然后再返回根目录去访问/etc/passwd文件,最后发现得返回五个上级才回到根目录,最后我们成功得到flag

bash 复制代码
shellmates{yOU_M4De_yOUr_waY_7hRough_iT} 

三、lfi(bugku CTF)

这一关是第三关,我们一起看看吧。、

1、解题思路

1、漏洞利用

进入页面发现提示是给了我们一部分页面源代码,str_replace('../', '',$_GET['language']) ;

有php基础的就知道这个是一个过滤关键字的函数,没有见过的也不要慌张,我们搜一搜就知道了。

本题过滤就是将用户传参的language参数的关键字.../替换为空了

因为这里只过滤了一次,我们可以双写绕过。比如...//过滤后变为.../

构造路径为...//...//...//...//etc/passwd

最后得出flag

总结

此文章是小白为了学习ctf所写的,感谢大家支持。

相关推荐
凛铄linshuo27 分钟前
爬虫简单实操2——以贴吧为例爬取“某吧”前10页的网页代码
爬虫·python·学习
大春儿的试验田1 小时前
高并发收藏功能设计:Redis异步同步与定时补偿机制详解
java·数据库·redis·学习·缓存
Fortinet_CHINA2 小时前
工业网络安全新范式——从风险可见性到量化防御的进化
安全·web安全
金色光环2 小时前
【Modbus学习笔记】stm32实现Modbus
笔记·stm32·学习
THMOM913 小时前
TinyWebserver学习(9)-HTTP
网络协议·学习·http
凌辰揽月3 小时前
Servlet学习
hive·学习·servlet
网安小白的进阶之路4 小时前
A模块 系统与网络安全 第三门课 网络通信原理-3
网络·windows·安全·web安全·系统安全
HumanRisk4 小时前
HumanRisk-自动化安全意识与合规教育平台方案
网络·安全·web安全·网络安全意识教育
魔芋红茶4 小时前
spring-initializer
python·学习·spring
西岭千秋雪_5 小时前
Redis性能优化
数据库·redis·笔记·学习·缓存·性能优化