南邮-Web(一)

前言

最近做了些南邮的Web题,虽然有些比较基础,但依旧可以学到一些Web知识。

正文

Web1:签到题

题比较基础,查看源码即可
在这里插入图片描述

Web2:md5 collision

在这里插入图片描述
审计题目的代码可知:

  1. 字符串QNKCDZO进行md5,得到md5值0e830400451993494058024219903391并赋值给变量$md51
  2. GET请求获取提交a的值并赋值给变量$a,并对$a进行md5操作赋值给$md52
  3. 若变量$a不为空,且不等于’QNKCDZO’,并$md51$md52的值内容相等,则可以得到 flag。
  4. 由于$md51为0e830400451993494058024219903391,在==比较时,会被认为是0*10^830400451993494058024219903391,也就是0。
  5. 那满足条件的变量$a就是其md5值是0e开头的即可
    找一个md5加密后为0的值:s878926199a
    更多请点击->MD5加密后==’0’
    由于是GET请求获取变量$a,构造参数flag显现

Markdown

Web3:签到2

Markdown

很明显,口令有11位,输入框只能输10位,增大输入框长度即可。输入口令得到flag
在这里插入图片描述

Web4:这题不是WEB

在这里插入图片描述
看题目提示,可能此题不是Web题。。。点开题目地址
在这里插入图片描述
分析发现就这张图片比较可疑,保存图片,看是不是图片隐写。先用WinHex打开
在这里插入图片描述
果然这题不是WEB,是图片隐写

Web5:层层递进

题目描述没有提示,点击题目地址
在这里插入图片描述
没有有用信息,查看网页源码
在这里插入图片描述
发现有个SO.html,输入到url地址栏,并查看源码
在这里插入图片描述
发现有个S0.html,输入到url地址栏,并查看源码
在这里插入图片描述
发现有个SO.htm,输入到url地址栏,并查看源码
在这里插入图片描述
发现有个S0.htm,输入到url地址栏,并查看源码
在这里插入图片描述
发现有个404.html,输入到url地址栏
在这里插入图片描述
查看源码
在这里插入图片描述
发现flag了,flag是nctf{this_is_a_fl4g}。果然是层层递进。。。。。

Web6:AAencode

在这里插入图片描述
先百度AAencode:

什么是jjencode?将JS代码转换成只有符号的字符串
什么是aaencode?将JS代码转换成常用的网络表情。

根据题目描述,这是一道颜文字js加密,但是密文不应该是这样。所以应该编码有问题。用火狐打开,单击查看–>文字编码–>unicode
在这里插入图片描述
编码成功,然后进行颜文字解密。可以用火狐的控制台,也可以用谷歌的Console
在这里插入图片描述
在这里插入图片描述

Web7:单身二十年

打开题目,查看源码
在这里插入图片描述
点击,发现并没有进入到search_key.php。应该是重定向了。
在这里插入图片描述
所以抓包,发送到Repeater
在这里插入图片描述
点击Go,发包,得到flag了
在这里插入图片描述

Web8:php decode

在这里插入图片描述
审计php代码。发现eval函数1,先百度一下eval:
eval() 函数用来执行一个字符串表达式,并返回表达式的值。
eval()函数会执行括号里面的语句,这种代码在现实中一般是某个黑客上传的一句话马。
但在这里eval里面肯定就是flag了,所以将eval改为echo输出eval里面的内容
在这里插入图片描述
运行php代码,得到flag
在这里插入图片描述

Web9:文件包含

在这里插入图片描述
点击”click me? no”,发现存在文件包含

http://4.chinalover.sinaapp.com/web7/index.php?file=show.php

文件包含?!不会。。。了解一下吧!
文件包含漏洞
文件包含
解释:
LFI是能够打开并包含本地文件的漏洞

所以这道题是本地文件包含, 尝试使用伪协议读取php文件

http://4.chinalover.sinaapp.com/web7/index.php?file=php://filter/read=convert.base64-encode/resource=index.php

得到base64加密后的字符串
在这里插入图片描述
Base64解密,看到原内容,得到flag。
在这里插入图片描述

Web10:单身一百年也没用

这道题Web7单身二十年很像,但当我们直接点击“到这里找KEY”然后再进行抓包时,找不到异常。
额。不会了。。查看一下大佬的博客,了解到
当我们先抓包再点击接着再抓包时候会找到302重定向错误代码,这时候可以在响应头中找到flag。
大佬用的是火狐,而我的火狐有点问题,没有抓到中间重定向的包。
所以我直接用的谷歌的Network
在这里插入图片描述
百度302错误代码:302重定向又称之为302代表暂时性转移(Temporarily Moved ),英文名称:302 redirect。 也被认为是暂时重定向temporary redirect),一条对网站浏览器的指令来显示浏览器被要求显示的不同的URL,当一个网页经历过短期的URL的变化时使用。一个暂时重定向是一种服务器端的重定向,能够被搜索引擎蜘蛛正确地处理。

Web:Download~!
题崩了,打不开了。。。。

Web11:COOKIE

在这里插入图片描述
有一个提示0==not
点开题目
在这里插入图片描述
“please login first!”翻译成“请先登录!”,burpsuite抓包
在这里插入图片描述
发现Cookie:Login=0,而0===not,所以将0改为1,再点击Forword发包,得到flag
在这里插入图片描述

Web12:MYSQL

题目没有提示,点开题目
在这里插入图片描述
robots.txt这个我知道,之前做攻防世界的Web题遇到过
robots协议
robots.txt是搜索引擎中访问网站的时候要查看的第一个文件。
所以在url栏里输入robots.txt
在这里插入图片描述
发现提示sql.php,在另一窗口打开。然后审计php代码,发现intval() 函数,百度一下
intval() 函数
intval() 函数用于获取变量的整数值。
intval() 函数通过使用指定的进制 base 转换(默认是十进制),返回变量 var 的 integer 数值。 intval() 不能用于 object,否则会产生 E_NOTICE 错误并返回 1。

理解一下php代码
1、$id等于$_GET[id]的整数值
2、sql查询语句id='$id'
3、如果 $_GET[id]==1024返回“no! try again”,否则返回数据库content字段内容
所以在sql.php页面进行get传参。get传递的参数不能等于1024,且查询时id=1024,所以get传一个整数部分为1024的浮点数即可。最终得到flag。
在这里插入图片描述

Web13:GBK Injection

在这里插入图片描述
这道题是宽字节注入,我还没学到,就先用sqlmap做一下吧,正好可以熟悉熟悉sqlmap命令的使用
至于为什么要加%df
%df%27是双字节不转义单引号实现注入的方法,具体看大佬博客
gbk字符编码和宽字节sql注入
1、爆库
命令:

sqlmap.py -u "http://chinalover.sinaapp.com/SQL-GBK/index.php?id=1%df%27" --current-db

在这里插入图片描述
所以当前数据库为:sae-chinaover
2、爆表
命令:

sqlmap.py -u "http://chinalover.sinaapp.com/SQL-GBK/index.php?id=1%df%27" --tables -D sae-chinalover

在这里插入图片描述
3、爆字段和数据
发现6个表,根据题目标题GBK Injection,所以flag有可能在gbksqli表里
命令:

sqlmap.py -u "http://chinalover.sinaapp.com/SQL-GBK/index.php?id=1%df%27" --dump -T gbksqli -D sae-chinalover

在这里插入图片描述
当然,如果没想到这个表,可以一个表一个表的试。需要注意的是,在ctf4表里也出现了flag
在这里插入图片描述
但这个并不是这道题的答案。

Web14:变量覆盖

在这里插入图片描述
似乎没听说过,那先了解一下有关变量覆盖的基础知识吧
变量覆盖漏洞详解
CTF之php变量覆盖漏洞
开始做题
在这里插入图片描述
点开显眼的source.php文件
在这里插入图片描述
审计php代码,发现如果$pass==$thepassword_123就显示flag。所以构造get传参值,让两变量相等
在这里插入图片描述
得到flag。
就先总结这么多吧。。。。。。。。。。。。

感悟

题不是太难,重点是基础知识的掌握。尤其是文件包含的理解和代码审计的能力。
小白进阶ing。。。


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 qwzf1024@qq.com

×

喜欢就点赞,疼爱就打赏