【攻防世界7-12题】题解和解题心得

7.simple_php

题目描述:小宁听说php是最好的语言,于是她简单学习之后写了几行php代码。

  • 审计PHP代码得 要输入a=abc&b=1235a
    在这里插入图片描述
  • 然后在a=abc&b=1235a前面添加一个?
  • 就直接出flag
    在这里插入图片描述

8.get_post

题目描述:X老师告诉小宁同学HTTP通常使用两种请求方法,你知道是哪两种吗?

  • 在客户机和服务器之间进行请求-响应时,两种最常被用到的方法是:GET 和 POST。
  • Get是最常用的方法,通常用于请求服务器发送某个资源,而且应该是安全的和幂等的。
  • POST方法向服务器提交数据,比如完成表单数据的提交,将数据提交给服务器处理。

1.GET和POST的区别:

  • GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连,如:login.actionname=hyddd&password=idontknow&verify=%E4%BD%A0%E5%A5%BD。
  • 如果数据是英文字母或数字,则原样发送;如果是空格,转换为+;
  • 如果是中文或其他字符,则直接把字符串用BASE64加密,得出如:%E4%BD%A0%E5%A5%BD,其中%XX中的XX为该符号以16进制表示的ASCII码值。而与之对应的,POST把提交的数据放置在HTTP包的包体中。
  • POST的安全性要比GET的安全性高。注意:这里所说的安全性和上面GET提到的“安全”不是同个概念。上面“安全”的含义仅仅是不作数据修改,而这里安全的含义是真正的Security的含义。
  • 比如:通过GET提交数据,用户名和密码将明文出现在URL上,因为:(1)登录页面有可能被浏览器缓存,(2)其他人查看浏览器的历史纪录,那么别人就可以拿到你的账号和密码了,除此之外,使用GET提交数据还可能会造成Cross-site request forgery攻击(CSRF,跨站请求伪造,也被称为:one click attack/session riding)。

所以我们先来用get:

  • 输入 /?a=1 在这里插入图片描述
  • 用post方法发送b=2

在这里插入图片描述

9.xff_referer

题目描述:X老师告诉小宁其实xff和referer是可以伪造的。

  • HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器该网页是从哪个页面链接过来的,服务器因此可以获得一些信息用于处理。(简单的说就是告诉服务器上应该页面是哪里的)

在这里插入图片描述

  • 改完ip之后
    在这里插入图片描述

  • 取包和放包
    在这里插入图片描述

  • 发送Referer: https://www.google.com,直接出flag
    在这里插入图片描述

10.webshell

题目描述:小宁百度了php一句话,觉着很有意思,并且把它放在index.php里。

解法一

  • 用hackbar的post方法直接发送shell=system(‘cat flag.txt’);

在这里插入图片描述

11.command_execution

题目描述:小宁写了个ping功能,但没有写waf,X老师告诉她这是非常危险的,你知道为什么吗。

  • windows 或linux 下: command1 && command2 先执行command1,如果为真,再执行command2
    command1 | command2 只执行command2 command1 & command2
    先执行command2 后执行command1 command1 || command2
    先执行command1,如果为假,再执行command2 命令执行漏洞(| || & && 称为 管道符)
    在这里插入图片描述命令执行题,可以任意执行命令
    利用cat 命令打开flag 文件,127.0.0.1 && cat …/…/…/…/home/flag.txt,得到flag在这里插入图片描述

12.simple_js

题目描述:小宁发现了一个网页,但却一直输不对密码。(Flag格式为 Cyberpeace{xxxxxxxxx} )
在这里插入图片描述

  • 先代码审计一下,发现无论输入什么都是错误密码
  • 然后再将fromcharcode里面的一串东西从十六进制转到十进制
  • 然后将十进制的数字反编译acsill码,即得flag
    在这里插入图片描述
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值