当前位置: 代码迷 >> 综合 >> bugku Web29
  详细解决方案

bugku Web29

热度:111   发布时间:2023-11-24 20:45:48.0

Web29

题目
在这里插入图片描述

代码大致意思
Flag在文件flag。PHP中
urlencode()函数原理就是首先把中文字符转换为十六进制,然后在每个字符前面加一个标识符%。
在分别用get和post的方式传值uname和passwd
如果uname和passwd值相等
输出uname不能等于passwd
另外如果uname的sha1和值与passwd的sha1的值相等且id=mrgin得到flag
否则输出sorry

Sha1值
文件的SHA1值就像人的指纹,是文件bai的du数字指纹,是唯一的,一个文件zhi对应一个唯一的SHA1值,一般用来确认dao你的文件和官方发布的是否一致.如果官方原版文件被别人做过手脚,那么算出来的SHA1值就会不同.所以SHA1值是用来“验明正身”的。有些居心叵测的人在官方系统光盘里面加入木马程序、广告程序等,然后再放出来给人下载,如果你不检查SHA1值就贸然安装就中招了,可以在网上下载一个数字指纹检验器来计算你下载回来的win7系统文件的SHA1值,然后到微软的MSDN去查看官方发布的SHA1值,如果两者相等,说明你下载的文件是和官方提供的是一样的,你可以放心的安装了。这就是SHA1值的用处,其他地方不用SHA1值的。SHA1是个算法(信息摘要算法)不是方法也不是函数没什么返回值, SHA1值为string

构造值

Get: id=margin&uname[]=1
Post:passwd[]=5

在这里插入图片描述

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