CTF学习——攻防世界

查看网页源代码的方法

第一种:F12

第二种:鼠标右键→查看网页源代码

第三种:ctrl+shift+I

第四种:ctrl+U

第五种:在url前面加view-source:

第六种:将网页另存为.html文件,然后用文本编辑器打开

robots协议

robots协议是一个君子协议,不是硬性要求,我们可以去爬取,但是可能会承担法律责任。

看看网页中有没有藏一个robots文档输入,在url中输入"/robots.txt"

会看到页面,其中:

第一行user-agent的*是适用于任意的浏览器,后面的是不允许访问(爬虫)后面的两个文件夹和文件,在URL中输入"/文件名"即可

备份文件

index.php的备份文件名为index.php.bak

下载文件后选用记事本打开

disabled属性

在给button设置disabled属性的时候,如下

复制代码
<button disabled="disabled">确定</button>

此时按钮处于不可点击状态,真实有效的方法是将disabled属性移除

get方式

使用浏览器插件hackbar,

或此时就按F12打开开发者工具,选择安装好的插件harkbar

先点击load url提取url,再根据题意在url后输入/?a=1,点击execute发送

POST方式

post方式:先点击load url提取url,然后选择post data,再根据题意在post输入框内输入b=2,点击execute发送,获取到flag

弱口令爆破

PHP

复制代码
<?php
show_source(__FILE__);
include("config.php");
$a=@$_GET['a'];
$b=@$_GET['b'];
if($a==0 and $a){
    echo $flag1;
}
if(is_numeric($b)){
    exit();
}
if($b>1234){
    echo $flag2;
}
?> 

如果a==0且a有一个值,输出flag1;如果b只为数字或数字字符串,则会退出;如果b>1234,则输出flag2。

所以构造:?a=0a&b=12345a

命令执行

ping功能,但没有写waf,很危险

打开页面,如下,输入127.0.0.1,查看命令执行结果

联想到能否使用命令拼接的方式来执行其它命令:

复制代码
掌握有关命令执行的知识
windows 或 linux 下:
command1 &&  command2  先执行 command1,如果为真,再执行 command2
command1 |   command2  只执行 command2
command1 &   command2  先执行 command2 后执行 command1
command1 ||  command2  先执行 command1,如果为假,再执行 command2
命令执行漏洞(| || & && )称为 管道符

执行一个 ping 带一个其他命令试试,果然能看到当前目录下的文件

复制代码
127.0.0.1&&ls

执行成功得到index.php文件,说明成功执行了ls命令,于是我们可以查找所有的以.txt结尾的文件,用find命令,输入:

复制代码
127.0.0.1 &&find / -name "*.txt"

发现了一个flag.txt文件,利用cat命令查看它

复制代码
 127.0.0.1 &&cat /home/flag.txt
相关推荐
远离UE45 小时前
houdini hda 如何让模拟与虚幻物体进行碰撞
笔记·学习·houdini
浮游本尊6 小时前
React 18.x 学习计划 - 第十四天:实战整合与进阶收尾
前端·学习·react.js
The_Uniform_C@t26 小时前
PWN | 对CTF WIKI的复现+再学习 (第八期)
网络·学习·网络安全·二进制
前路不黑暗@8 小时前
Java项目:Java脚手架项目的登录认证服务(十三)
java·spring boot·笔记·学习·spring·spring cloud·maven
前路不黑暗@9 小时前
Java项目:Java脚手架项目的 C 端用户服务(十五)
java·开发语言·spring boot·学习·spring cloud·maven·mybatis
Hello_Embed9 小时前
Modbus 传感器开发:STM32F030 libmodbus 移植
笔记·stm32·学习·freertos·modbus
知识分享小能手10 小时前
SQL Server 2019入门学习教程,从入门到精通,SQL Server 2019 视图操作 — 语法知识点及使用方法详解(16)
sql·学习·sqlserver
前路不黑暗@11 小时前
Java项目:Java脚手架项目的 B 端用户服务(十四)
android·java·开发语言·spring boot·笔记·学习·spring cloud
锅包一切11 小时前
PART17 一维动态规划
c++·学习·算法·leetcode·动态规划·力扣·刷题