攻防世界web新书题解析

攻防世界web新手题解析

题目解析

一、view _source
在这里插入图片描述
查看源代码有三种方法:
1、任意打开一个网页,鼠标右击会看到”查看源代码“,这个网页的源代码就出现在你眼前了;
2、为了方便快捷,小伙伴们可以使用快捷Ctrl+U来查看源码,同样可以实现;
3、也可以在你想要查看的网页地址栏前面加上入view-source:
比如:view-source:https://www.baidu.com/ 就可以查看百度的源代码。
二、robots

在这里插入图片描述
建立题目场景后可以在url后加robots.txt,然后再访问f1ag_1s_h3re.php,即可得到flag,本题得解。
三、backup
在这里插入图片描述
index.php文件的备份文件,在后面加上”.bak”,即index.php.bak。本题在url后加上bak即可。
四、cookie
在这里插入图片描述
1、浏览器按下F12键打开开发者工具,刷新后,在存储一栏,可看到名为look-here的cookie的值为cookie.php
2、访问http://111.198.29.45:47911/cookie.php,提示查看http响应包,在网络一栏,可看到访问cookie.php的数据包
3、点击查看数据包,在消息头内可发现flag
五、disabled_button
在这里插入图片描述
1、打开开发者工具;
2、删除” disable=”” ,然后点击即可获得flag。
六、weak_auth
在这里插入图片描述
首先我们可以猜测一下账号和密码,账号是admin,密码是123456。
解决这道题要使用burpsuite,根据字节长度可以知道密码
在这里插入图片描述
七、simple_php
在这里插入图片描述
1、打开后
在这里插入图片描述
2、本题要求a必须等于0且a为真且b大于1234,所以在url写http://111.198.29.45:44957/?a=00a&&b=12345s,即可得到flag。
八、get post
在这里插入图片描述
本题需要用到hackbar,这里需要在火狐安装hackbar v2。
1、打开题目,在url?a=1”.例:119.198.29.45:48280?a=1
2、打开开发者工具,使用hackbar中的post传参,b=2,即可获得flag。
九、xff_referer
在这里插入图片描述本题使用hackbar
1、点击题目,打开开发者工具,伪造xff,构造ip地址构造X-Forwarded-For=123.123.123.123
2、构造referer:https://www.google.com,即可得到flag。
十、webshell
在这里插入图片描述
可以使用hackbar,使用post方式传递shell=system(‘cat flag.txt’); 获得flag
十一、command_execution(命令执行)
在这里插入图片描述
1、打开浏览器,在文本框内输入127.0.0.1 | find / -name “flag.txt” (将 | 替换成 & 或 && 都可以)
2、在文本框内输入 127.0.0.1 | cat /home/flag.txt 可得到flag。
十二、simple_js
在这里插入图片描述
1.打开页面,查看源代码,可以发现js代码。
2.进行代码审计,发现不论输入什么都会跳到假密码,真密码位于 fromCharCode 。
3.先将字符串用python处理一下,得到数组[55,56,54,79,115,69,114,116,107,49,50]。
4.将得到的数字分别进行ascii处理,可得到字符串786OsErtk12。

相关知识

一、查看源代码的三种方法:1、任意打开一个网页,鼠标右击会看到”查看源代码“,这个网页的源代码就出现在你眼前了;
2、为了方便快捷,小伙伴们可以使用快捷Ctrl+U来查看源码,同样可以实现;
3、也可以在你想要查看的网页地址栏前面加上入view-source:
比如:view-source:https://www.baidu.com/ 就可以查看百度的源代码
二、robots协议
1、robots协议也叫robots.txt(统一小写)是一种存放于网站根目录下的ASCII编码的文本文件,它通常告诉网络搜索引擎的漫游器(又称网络蜘蛛),此网站中的哪些内容是不应被搜索引擎的漫游器获取的,哪些是可以被漫游器获取的。
2、网络蜘蛛(网络爬虫):根据一定的规则从万维网上截取信息的程序或脚本。
三、backup
backup文件夹实际上是备份文件夹,常见的备份后缀名有.git .svn .swp .svn .~ .bak .bash_history。
四、cookie
Cookie,有时也用其复数形式 Cookies。类型为“小型文本文件”,是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息。即cookie是网站保存的密码串,用来验证用户身份。
五、disabled_button
考察对源码的修改
六、weak_auth
weak_auth是弱口令身份验证
弱口令(weak password): 没有严格和准确的定义,通常认为容易被别人(他们有可能对你很了解)猜测到或被破解工具破解的口令均为弱口令。所以不建议使用弱口令
七、simple_php
考察对php语言的学习,详细可见php相关知识
八、get post
http的两种请求方式:GET方法与POST方法
<1>GET方法
1、GET交互方式是从服务器上获取数据,而并非修改数据,所以GET交互方式是安全的。就像数据库查询一样,从数据库查询数据,并不会影响数据库的数据信息,对数据库来说,也就是安全的。
2、GET交互方式是幂等的,幂等是一个数学概念,幂等函数就是可以使用相同参数重复执行,并且能获得相同结果的函数。在GET交互这里就是,对同一个URL的多个请求,得到的结果是相同的。就像数据库查询,不同的数据库连接对同一个数据库表用相同条件查询时,得到的结果也是一样的
<2>POST方法
1、POST交互是可以修改服务器数据的一种方式,涉及到信息的修改,就会有安全问题。就像数据库的更新,Update一个数据库表时,如果条件没有写对,就可能把不需要修改的数据给修改了,得到的数据就是错误的了。
2、一般的POST交互是必须要用到表单的,但是表单提交的默认方法是GET,如果改为POST方式,就需要修改表单提交时的Method
九、xff_referer
X-Forwarded-For(XFF)是用来识别通过HTTP代理或负载均衡方式连接到Web服务器的客户端最原始的IP地址的HTTP请求头字段。 Squid 缓存代理服务器的开发人员最早引入了这一HTTP头字段,并由IETF在HTTP头字段标准化草案中正式提出。
十、webshell
webshell是一句话木马,详细可见sqli-labs-master基础知识
十一、command_execution(命令执行
当应用需要调用一些外部程序去处理内容情况下,就会用到一些执行系统命令的函数,比如php中的system、exec、shell_exec、passthru、popen、popc_popen等,当用户调用这些函数时,将恶意系统命令注入到正常命令中,造成命令执行漏洞。
本题主要考察命令拼接的方法,其原理为:
| 的作用为将前一个命令的结果传递给后一个命令作为输入
&&的作用是前一条命令执行成功时,才执行后一条命令