IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> XCTF攻防世界-web新手题 -> 正文阅读

[PHP知识库]XCTF攻防世界-web新手题

1.查看源码

可以用快捷键ctrl+U

?得到flag

2.robots

robot就是机器人的意思,robots.txt就是关于机器人的一个协议文档,这个机器人指搜索引擎的蜘蛛,在《互联网搜索引擎服务自律公约》第七条有“遵循国际通行的行业惯例与商业规则,遵守机器人协议(robots协议)。这个文档是搜索引擎中访问网站的时候要查看的第一个文件,文件中会明确告诉搜索引擎允不允许访问这个网站。

访问robots.txt文档

  • robots.txt的两条规则

①User-agent:指定对哪些爬虫生效

②Disallow:指定要屏蔽的网址

访问这个php文件,得到flag

3.backup

用记事本打开查看源代码,得到flag

?4.cookie

用burpsuit抓包获取cookie

?看到cookie在cookie.php这个文件中,访问这个文件

?叫我们查看响应,答案就在这里

?5.

把disabled删掉,无效按钮变成有效按钮,再点击按钮

?6.查看网页源代码,有一个check.php访问它

?

?解释需要字典,可以用burpsuit爆破

?

标记需要爆破的位置

找到长度不一样的

?

?7.simple_php

?

?分析代码

$a=@$_GET["a"]; 中的“@”作用:可以防止a的值为空时产生一个警告提示

if($a==0 and $a){
echo $flag1;
}
参数a=0且a为真才能得到flag1

if(is_numeric($b)){
exit();
}
is_numeric() 函数用于检测变量是否为数字或数字字符串。
如果b为数字就会退出,即b不能为数字。

if($b>1234){
echo $flag2;
}
b要大于1234才能得到flag2.?

此问题涉及到php弱类型比较

什么是php弱类型比较?

  • 松散比较:使用两个等号?==?比较,只比较值,不比较类型。
  • 严格比较:用三个等号?===?比较,除了比较值,也比较类型。
  • 字符串和数字比较使用==时,字符串会先转换为数字类型再比较
  • var_dump('a' == 0);//true,此时a字符串类型转化成数字,因为a字符串开头中没有找到数字,所以转换为0
  • var_dump('123a' == 123);//true,这里'123a'会被转换为123
  • var_dump('a123' == 123);//false,因为php中有这样一个规定:字符串的开始部分决定了它的值,如果该字符串以合法的数字开始,则使用该数字至和它连续的最后一个数字结束,否则其比较时整体值为0。
  • 举例: var_dump('123a1' == 123);//true
  • 举例: var_dump('1233a' == 123);//false

?b=1235a时既不为数字同时也大于1234

综上,我们传a=a&b=1235a即可

8.get_post

?在url中/?再接上要传送的值就是get方式

?post方式上传需要hackbar

?9.xff_referer

原理:

X-Forwarded-For:简称XFF头,它代表客户端,也就是HTTP的请求端真实的IP,只有在通过了HTTP 代理或者负载均衡服务器时才会添加该项。

HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的。

?

?打开burpsuit在请求头添加x-forwarded-for:123.123.123.123再放包

10.webshell

?

?

?11.command execution

先ping一下127.0.0.1

?尝试命令拼接是否可以正常执行

确定可以,再命令查找所有文件后缀名为tet的文件

?

?发现有一个flag.txt? 获取文件信息

12.simple js

查看源码

?

pass = "70,65,85,88,32,80,65,83,83,87,79,82,68,32,72,65,72,65"所对应的字符,即FAUX PASSWORD HAHA  提示错误的字符串
dechiffre("\x35\x35\x2c\x35\x36\x2c\x35\x34\x2c\x37\x39\x2c\x31\x31\x35\x2c\x36\x39\x2c\x31\x31\x34\x2c\x31\x31\x36\x2c\x31\x30\x37\x2c\x34\x39\x2c\x35\x30")

把十六进制转换成10进制为55,56,54,79,115,69,114,116,107,49,50

再将数字转换成字符786OsErtk12

flag为 Cyberpeace{786OsErtk12}

?

?

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-09-24 10:21:05  更:2021-09-24 10:21:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 21:54:17-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码