BugkuCTF web_31-40
发布日期:2021-05-07 06:22:50 浏览次数:18 分类:原创文章

本文共 2092 字,大约阅读时间需要 6 分钟。

31 md5 collision(NUPT_CTF)

题目有md5提示,所以找一个md5值是0e开头的看看
get传参?a=240610708拿到flag。

————————————

32 程序员本地网站

伪造XFF头就行了

————————————

33 各种绕过

sha1() 函数计算字符串的 SHA-1 散列。
sha1只对字符型进行处理,是数组的话返回false,所以让两个值都为数组就可以了。

passwd要用post提交才行(不知道为啥)

————————————

34 web8

extract() 函数从数组中将变量导入到当前的符号表。
该函数使用数组键名作为变量名,使用数组键值作为变量值。针对数组中的每个元素,将在当前符号表中创建对应的一个变量。

可以构造fn=php://input的值和ac的值一样
也可以让ac的值和flag.txt里的值一样都能拿到flag。

————————————

35 细心

访问robots.txt,(扫描后台能扫到)看到禁止访问resusl.php.那就访问这个好了。
接着构造x的值,题目上有个admin,试试看 拿到flag。

————————————

36 求getshell

getshell就是获得权限的意思。
Content-Type来表示具体请求中的媒体类型信息。

请求头Content-Type,通过大小写进行绕过
文件格式Content-Type用image/png
上传文件名用.php5后缀

这道题不是很理解,以后掌握的知识多了再回来看看。

————————————

37 INSERT INTO注入

explode() 函数把字符串打散为数组。

延迟注入,是一种盲注的手法, 提交对执行时间敏感的函数sql语句,通过执行时间的长短来判断是否执行成功,比如:正确的话会导致时间很长,错误的话会导致执行时间很短。

mysql中与if有相同功效的就是:select case when (条件) then 代码1 else 代码 2 end;

现在理解起来有些费劲,过段时间回来看
参考链接https://blog.csdn.net/jlu16/article/details/86264633

————————————

38 这是一个神奇的登陆框

参考链接https://blog.csdn.net/qq_42967398/article/details/84930265

database()
以utf8字符集中的字符串形式返回默认(当前)数据库名称。 如果没有默认数据库,则DATABASE()返回NULL。 在存储例程中,默认数据库是例程所关联的数据库,它不一定与调用上下文中默认的数据库相同

mysql(5.0+)默认定义information_schema数据库,有
schemata(数据库名)表、tables(表名)表、columns(字段名)表

在schemata表中,schema_name字段用来存储数据库名
在tables表中,table_schema和table_name分别存储数据库名和表明
在columns表中,table_schema(数据库名)、table_name(表名)、column_name(字段名)

————————————

39 多次

group_concat(column):对查询到的多条记录进行合并。

concat()的一般用法主要是用于拼接.
例如:concat(‘m’,‘y’,‘s’,‘q’,‘l’)作用是mysql。

异或注入
例:?id=1’^(length(‘union’)!=0)–+

参考链接https://blog.csdn.net/qq_26090065/article/details/82708691

————————————

40 PHP_encrypt_1(ISCCCTF)

php在循环或if等块中声明的变量也可以在块外识别和访问,

function decrypy($data){   	$key = "729623334f0aa2784a1599fd374c120d";	//md5('ISCC')	$klen = strlen($key);	$data = base64_decode($data);	$len = strlen($data);		for ($i=0, $x=0; $i<$len; $i++){   		if ($x==$klen){   			$x = 0;		}		$char .= $key[$x];		$x++;	}	$str="";	for ($i=0; $i<$len; $i++){   		$str .= chr((ord($data[$i]) + 128 - ord($char[$i])) % 128);	}	echo $str . "<br />";}decrypy("fR4aHWwuFCYYVydFRxMqHhhCKBseH1dbFygrRxIWJ1UYFhotFjA=");
上一篇:BugkuCTF web_41-45
下一篇:BugkuCTF web_21-30

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2025年03月27日 09时20分34秒