攻防世界新手区Web(二)

前言

又是几天没有更新博客了,是有那么一丢丢懒哈哈,不过最近有考试(借口),这可不能怪我嗷。今天依旧是给小榆和各位小伙伴分享一波最近在攻防世界的wp,之后除了考试和复习会按时更新的啦~

高手进阶区和BUUCTF那边我也会去踩坑的,让小榆和大家见到一只菜鸟的成长叭。

使用工具:Firefox、Burpsuite、中国蚁剑。

参考:
https://blog.csdn.net/weixin_43460822/article/details/101596267、cnblogs.com/ainv-123/p/11595170.html

题目与wp

simple_php

打开网站可以看到下面这串代码:

<?php
show_source(__FILE__);
include("config.php");
$a=@$_GET['a'];
$b=@$_GET['b'];
if($a==0 and $a){
    echo $flag1;
}
if(is_numeric($b)){
    exit();
}
if($b>1234){
    echo $flag2;
}
?> 

大概意思就是:

以get方式传入一个参数a,要求 a>0 并且 a 为真,若是a满足该条件则输出flag1;再以get方式传入参数b,要求 b>1234 且 不是数字 ,若是b满足以上条件则输出flag2

代码看完了,接下来就构造get请求打印flag就好啦:

令 a=0a 得到 flag1:
在这里插入图片描述
再令 b=12345a 得到 flag2:

在这里插入图片描述
最后得到 flag:

Cyberpeace{647E37C7627CC3E4019EC69324F66C7C}

get_post

打开网址后可以看到这样的界面:

在这里插入图片描述
按照题目的要求以get方式提交变量a的值:

在这里插入图片描述
接下来按照题目要求以post方式提交变量b的值,此处建议使用Firefox,因为Firefox的Max HackBar插件用起来真的爽~(新版火狐的HackBar需要收费啦,所以……没办法啦)

在这里插入图片描述
提交之后即可获得本题的flag:

cyberpeace{1ba4bcbe857a0098474e3584256ffe28}

xff_referer

先来了解一波xff 和 referer:

xff :xff 是 X-Forwarded-For 的缩写,X-Forwarded-For 是一个 HTTP 扩展头部,用来表示 HTTP 请求端真实 IP

referer: referer用于告诉服务器请求从什么地方来

然后打开网站,但是只看到显示下面文字:

ip地址必须为123.123.123.123

这个时候就应该想到用Burpsuite抓包然后构造 xff 和 referer ,至于怎么想到的呢,题目有说哇:X老师告诉小宁xff 和 referer 其实是可以伪造的
在这里插入图片描述
好叭,光看题目我没有想那么多,抓头良久之后看了大佬的wp,仰望完之后才开始自己写的啦。

言归正传,打开Burpsuite抓包,然后 Sent to Repeater:
在这里插入图片描述
再到Repeater -> Headers里面就可以构造 xff 和 referer 啦~

由于题目中所给的信息中有ip地址必须为 123.123.123.123,所以在此处先构造 xff,如下图:

在这里插入图片描述
然后点Go,查看返回包的信息:

在这里插入图片描述
提示为 “必须来自https://www.google.com”,那就再构造一波referer,然后在Go一次就可以啦:

在这里插入图片描述
就可以得到flag啦:

cyberpeace{83c4e978eb40c6c149edc6a6a802b7fb}

webshell

本题考虑的是对网站后门的利用,在此处可以使用蚁剑或者中国菜刀等工具扫描网站:

蚁剑安装参考一位猛人朋友的博客: https://blog.csdn.net/Forces_/article/details/109810615

话不多说,直接开锤,现在蚁剑添加数据:
注意连接密码是 shell,至于为什么是shell呢?题目已经给啦:

在这里插入图片描述

在这里插入图片描述
添加好之后双击即可连接服务器,查看有没有与flag相关的信息:

在这里插入图片描述
将这个flag.txt文件点开就可以看到flag啦:

cyberpeace{c1cefe4bb56efa19d6f567c9ba7ea9a9}

command_execution

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

注意题目中说没有写 waf,那就先来看看啥是 waf 叭:

Web应用防护系统(也称为:网站应用级入侵防御系统。英文:Web Application Firewall,简称: WAF)。利用国际上公认的一种说法:Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。(来源百度百科)

ping命令中经常有注入漏洞,而且没有 waf,那就应该考虑一下 SQL注入,冲冲冲!

先测试一下命令:127.0.0.1&&ls ,看看有啥反应:
在这里插入图片描述
我们知道,flag通常是放在txt文件中的,那咱们就先看看有没有和flag相关的txt文件吧:

命令: 127.0.0.1 & find / -name flag.txt

在这里插入图片描述
可以看到在home目录下有一个flag.txt,那么接下来只需要使用命令查看flag.txt就能得到flag啦:

命令:127.0.0.1&&cat /home/flag.txt

在这里插入图片描述

flag: cyberpeace{2322d5b0977b4cce18761ef751609eea}

simple_js

先打开网站:
在这里插入图片描述
好家伙,一进来就要输入密码,先随便输入一个123试试,发现啥都没有了……
既然如此的话那就查看一波网页源代码:

在这里插入图片描述
发现不管输入什么都会跳到输入假密码的情况下,还得到这样一串东西:

\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

使用python进行简单处理:

# 第一次转换:
s = "\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"
print(s)
print()

# 第二次转换:
a = [55, 56, 54, 79, 115, 69, 114, 116, 107, 49, 50]
c = ""
for i in a:
    b = chr(i)
    c = c + b
print(c)

得到运行结果: 786OsErtk12

再结合一波题目描述,可以得到 flag 为:Cyberpeace{786OsErtk12}
在这里插入图片描述

总结

每次打CTF都会学到很多的东西,收获一些之前没有的工具,记得有空就提醒自己打打CTF,这样才有东西分享给小榆,有东西给自己交代鸭~

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值