Web CTF 解题思路总结—南京邮电大学攻防平台writeup

1、直接查看源代码

例:签到题(50)


2、PHP的特性

(1)MD5 碰撞

例:md5 collision(50)

md5碰撞:MD5摘要算法可以从多个字节组成的串中计算出由32个字节构成的“特征串”,对于超过32字节的串来说,MD5计算得出的值必然是其一个子集,所以必然存在不同的串能够得出相同MD5值的情况,即碰撞。

在PHP中的MD5中的0e的比较:PHP在处理哈希字符串时,会利用“!=”或“==”来对哈希值进行比较,它把每一个以“0E”开头的哈希值都解释为0,所以如果两个不同的密码经过哈希以后,其哈希值都是以“0E”开头的,那么PHP将会认为他们相同,都是0。(详见:PHP Hash 缺陷


$a不等于‘QNKCDZO',但$a的MD5等于‘QNKCDZO'的MD5,这就很尴尬了。于是将‘QNKCDZO'MD5加密,发现( MD5在线加/解密 )md5(QNKCDZO)=0E830400451993494058024219903391,结合上面PHP Hash缺陷,所以下一步很明显制造开头为“0e"的MD5字符串。0e开头MD5值 将所得的值加入到页面地址后就得到了flag。


3、

例:签到2(50)

查看页面源代码,发现口令“zhimakaimen”长度为11,而html源码限制的长度为10。很明显需要去除或者修改限制。

1)利用火狐浏览器的hackbar插件直接越过html代码

4、

例:这题不是WEB(100)

打开题目地址后有一张图片,猜想可能是图片隐藏题,将图片下载后用记事本打开,在最后发现flag。


5、

例:层层递进(100)

0.0脑洞题,查看源代码后发现iframe有问题,一步步点进去,最后到view-source:http://chinalover.sinaapp.com/web3/404.html,获得如下界面



于是,flag就这样出来了......ntcf{this_is_a_fl4g}

6、

几种特别的加密方式:

ppencode/rrencode/jjencode/aaencode是Perl、Ruby、Javascript的小工具,可以将各自的代码进行混淆,转换成特殊字符,甚至还可以转换成有意思的表情。

ppencode-Perl:它可以把Perl代码转换成只有英文字母的字符串。Demo

rrencode-Ruby:它可以把ruby代码全部转换成符号。Demo

jjencode/aaencode-Javascript:前者将JS代码转换成只有符号的字符串,类似于rrencode,后者可以将JS代码转换成常用的网络表情。Demo 

例:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、GET/POST方法简介&用户安全 1、GET/POST方法简介 在客户端和服务器之间进行请求-响应时,两种最...
    方圆十里不留母狗阅读 32,524评论 0 13
  • 一、php可以做什么 php是一种可以在服务器端运行的编程语言,可以运行在Web服务器端。 php是一门后台编程语...
    空谷悠阅读 8,385评论 4 97
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 8,897评论 0 4
  • 今天贴吧请教问题,无意回看到自己发的个帖子,居然有很多回复。当时写下苹果铃声修改教程其实是一时之气。因为新版本的软...
    心里有刺阅读 1,252评论 0 0
  • 晚上有人很认真地告诉我:看完科比最后一场,很伤感,就好象自己的青春结束了。他说,科比可是陪我们一起度过最青春的时间...
    流走的沙漏阅读 3,940评论 -1 2

友情链接更多精彩内容