目录:
-
view_source
-
robots
-
backup
-
cookie
-
disabled button
-
weak auth
-
simple php
-
xff referer
-
webshell
-
get post
-
command execution
-
simple js
1.
查看源代码f12,(能得到flag的方法就是好方法,我只get这一种)即可得到flag
2.
根据题目提示,Robots协议(也称为爬虫协议、机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。robots.txt文件是一个文本文件,robots.txt是一个协议,而不是一个命令。robots.txt是搜索引擎中访问网站的时候要查看的第一个文件。robots.txt文件告诉蜘蛛程序在服务器上什么文件是可以被查看的。
在url后添加/robots.txt,(YYDS咱就是说)得到f1ag_1s_h3re.php,继续访问,即可得到真正的flag!
3.
根据t题目提示backup(备份文件)
查看备份文件的方法:在文件后添加后缀.bak或~
在URL后输入index.php.bak,打开即可得到flag
4.
Cookie是保存在客户端的纯文本文件,比如txt文件。是一种用于服务端进行身份验证的“临时身份证” ,requests的时候如果header中带有cookie字段,即可以免去登录等操作。Cookie一般是加密的。(遇到这种页面一般我都是直接抓包,看能否得到什么,再想别的)
用burpsuit直接抓包,发现有个cookite.php文件,添加在url后,重新抓包,发现flag。{洒洒水啦}
5.
打开源代码 ,修改 intput disabled属性,即可得到flag!(这种题大部分类似,按钮不能按,框框不能输,一般都是源代码修改属性的啥的,我觉得(俺是这样想的))
6.
最简单的万能用户名密码,浅试一下,即可flag!万能密码绝了,真的好喜欢!!!
7.
一遇到php我就开始EMO!
php 弱类型总结 - Mrsm1th - 博客园 (cnblogs.com)https://www.cnblogs.com/Mrsm1th/p/6745532.html大家去瞅瞅吧,大佬整挺好!
if($a==0 and $a)因为php是弱类型语言,所以构造命令如下:
payload:111.200.241.244:55960/?a=00a&&b=12345s
(PHP令我头秃!!!)
8.
秒懂百科:
xff 是http的拓展头部,作用是使Web服务器获取访问用户的IP真实地址 (可伪造)。由于很多用户通过代理服务器进行访问,服务器只能获取代理服务器的IP地址,而xff的作用在于记录用户的真实IP。通常可以直接通过修改http头中的X-Forwarded-For字段来仿造请求的最终ip。
referer 是http的拓展头部,作用是记录当前请求页面的来源页面的地址。 服务器使用referer确认访问来源,如果referer内容不符合要求,服务器可以拦截或者重定向请求。
用brupsuit抓包,先添加X-Forwarded-For:123.123.123.123在响应中看到必须来自谷歌,再次增加Referer: https://www.google.com,即可获得flag。 (有一说一:实践出真知)
9.
你会使用webshell吗?
<?php @eval($_POST['shell']);?>
第一感觉,一句话木马,这就要派我们的“菜刀”选手上场咧,菜刀一出手,flag就知有某有!
10.
请用GET方式提交一个名为a,值为1的变量
来吧!展示! 第一步:get传参:http://111.200.241.244:55306/?a=1
请再以POST方式随便提交一个名为b,值为2的变量
第二步: post传参通过hackbar,即可得到flag
11.(第一眼这啥玩意儿,还得是百度,ping命令,又多了一个新知识点)
Linux ping 命令用于检测主机。 执行ping 指令会使用ICMP 传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。
WAF(Web应用防护系统) Web应用防护系统(Web Application Firewall, 简称:WAF)代表了一类新兴的信息安全技术,用以解决诸如防火墙一类传统设备束手无策的Web应用安全问题。
语法
ping [-dfnqrRv][-c<完成次数>][-i<间隔秒数>][-I<网络界面>][-l<前置载入>][-p<范本样式>][-s<数据包大小>][-t<存活数值>][主机名称或IP地址]参数说明:
- -d 使用Socket的SO_DEBUG功能。
- -c <完成次数> 设置完成要求回应的次数。
- -f 极限检测。
- -i<间隔秒数> 指定收发信息的间隔时间。
- -I<网络界面> 使用指定的网络接口送出数据包。
- -l<前置载入> 设置在送出要求信息之前,先行发出的数据包。
- -n 只输出数值。
- -p<范本样式> 设置填满数据包的范本样式。
- -q 不显示指令执行过程,开头和结尾的相关信息除外。
- -r 忽略普通的Routing Table,直接将数据包送到远端主机上。
- -R 记录路由过程。
- -s<数据包大小> 设置数据包的大小。
- -t<存活数值> 设置存活数值TTL的大小。
- -v 详细显示指令的执行过程。
- -w <deadline> 在 deadline 秒后退出。
- -W <timeout> 在等待 timeout 秒后开始执行
ping命令大家可以去菜鸟(建议)详细了解了解,我也是好菜一yu
思路:
命令执行漏洞: 符号&、|、||可以作为命令连接符 ,用户通过浏览器提交执行命令,由于服务器端没有针对执行函数做过滤,导致在没有指定绝对路径的情况下就执行命令。
遇到ping页面,浅试ping本地,ping 127.0.0.1发现可以ping通。
接着用命令ls去操作:127.0.0.1 && ls, 发现可以执行。
接着用find命令找到所有的txt文本,再用cat打开flag.txt即可。
127.0.0.1 && find / -name “*.txt”
127.0.0.1 && cat /home/flag.txt
12.
我现在看见框,就想输万能密码啥的,九敏!!!
不行就源代码呗,还能怎样,我又没办法,然后发现了一串数字:var pass = "70,65,85,88,32,80,65,83,83,87,79,82,68,32,72,65,72,65";(结果转成字符串竟是这:FAUX PASSWORD HAHA)还有一串这 16进制字符串String["fromCharCode"](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"))把这玩意儿转成十进制,再套用脚本,即可得到flag
脚本:
s = [55,56,54,79,115,69,114,116,107,49,50]
a=""
for i in s:
b =chr(i)
a = a+b
print(a)