南邮CTF web题目总结

这几天写了南邮的web题目,都比较基础,但是对我这个小白来说还是收获蛮大的。可以借此总结一下web题的类型

一,信息都藏在哪

作为ctf题目,肯定是要有些提示的,这些提示有时会在题目介绍里说有时也会隐藏在某些地方。

1,源代码,这是最最最常见的。


2,http head头中,这个一般都会提下 ‘头’ 什么的。

3,非常规提示,就比如这个:


如果第一次做ctf题目,不知道还有这些套路,一般不会往这个方面想。

二,302自动跳转

在打开某个链接时,会跳转向另一个链接,而错过重要信息。

1,使用burpsuite一步步拦截释放,这样不会错过中间跳转。

2,如果网页使用的是js跳转,可以试试禁用js.

三,访问来源判断

这个也是经典题目了,通过判断ip,后者来源网址。可以总两个方面伪造

1,http referer头,这个头指示的是请求从哪个网站来

2,X-Forward-For头:这个头指示请求的ip

四,修改特定信息

这也是很基础的,主要有几个方面

1,GET/POST 表单的内容,包括键与值

2,修改HTTP header,多在cookie上有问题

五,php弱类型比较

1,字符串与数字比较:这个与mysql的规则比较像,开头纯字母的字符串会被转化为0,
开头有数字的会被转化为开头的数字。

比如:‘123abc’==123

               'abc123'==0

这两个都成立

2,科学计数法:0e开头的字符串会被认为值科学技术法形式,但转化成科学计数法有时
0成10的若干次方,都是相等的。

‘0e1234560’=='0e789456' 成立

比较明显的是在MD5加密上,如果两个字符串加密后都以0e开头,再比较他们的MD5值就会认为相等

也就会认为两字符串相等。

比如:md5('240610708')==md5('QNKCDZO')

3,intvar() 转换 这个函数可以把字符串转换为数字,规则与第一条类似

六,上传截断

参考我的一篇博客 https://blog.csdn.net/zpy1998zpy/article/details/80545408

七,sql注入

这个平台上没有特别在sql注入上难为同学们,也是基本题型

还是参考我的另一篇博客  https://blog.csdn.net/zpy1998zpy/article/details/80517626

八,十六进制绕过

十六进制在于数字比较时,会被转化为10进制,但在字符串操作时还是16进制形式。


这里的绕过就是传入 54975581388的16进制表示,就可通过对每一位ascii码的检查。

九,其他的小知识点

1,javascript aaencode  各种表情符 ,就是特征

解码:在线解码 https://tool.zcmzcm.org/aadecode

有个小问题,如果网页直接打开为乱码,就右键另存为,保存到本地用记事本打开,再去解码就行了。

2,JSF*ck 编码 各种括号加号

在线解码 http://www.jsfuck.com/

3,.swp文件,如果有提示就可以查看  .原文件名.swp

比如:直接访问    http://站点/ .index.php.swp 可以看到提示内容

4, .bash_history 文件 同样的,如果有提示,就可以试着访问这个文件,

5,序列化与反序列化,主要还是要懂基本含义与格式,然后调用 序列化与反序列化函数即可

这是php反序列化那题生成playload的代码

<?php
class just4fun {
    var $enter;
    var $secret;
}
$o = new just4fun();
$o->enter = &$o->secret;
echo serialize($o);
?>

如果会调用函数,就可以操作序列化和反序列化,所有重点还是对题目服务器代码的绕过技巧。


转载指明出处

阅读更多

没有更多推荐了,返回首页