准备一些预备。在虚拟机kali的火狐浏览器中打开设置
然后选择general,划到最下面,进入network settings
选择manual proxy configuration,HTTP设置成127.0.0.1 Port设置成8080
然后打开BUUCTF
打开burpsuit
进入靶机,右击查看页面源代码,利用所学知识解答
<!--
~~~post money and password~~~
if (isset($_POST['password'])) {
$password = $_POST['password'];
if (is_numeric($password)) {
echo "password can't be number</br>";
}elseif ($password == 404) {
echo "Password Right!</br>";
}
}
-->
看出is_numeric()这个函数,他的作用是判断输入是否是数字的。如果是纯数字返回true,如果不是返回false。这道题注释的代码逻辑是要输入一个非纯数字的字符串且等于404,密码才能正确。
password=404a
然后我们看money要求为100000000,但我们输入这个数时显示少了,然后我们输入1000000000,又显示位数太多,我们使用科学计数法试一试发现可以。
1e9
所以答案为:password=404a&1e9
还有一个要求必须是一个学生来自于CUIT
查看抓包获取的消息,其中user=0,根据上面收集到的信息,user=0代表不是学生,那么user=1代表的就是学生。
我们将user=0,改成user=1.
然后单击右键选择change request method,改为post
现在将得出的结果输入到解答框中,注意之间要空一行。
希望对大家有所帮助,欢迎指正!!!