llww

strcmp函数漏洞

适用5.3版本以前的php

 

函数作用:字符串比较

 

 要求传入字符串。如果传入非字符串呢?

结果函数报错!但是函数返回“0”  。 虽然报错了但函数的判断却是“相等”

如何传入非字符串?答案是传入数组

将变量的结尾加上“[ ]”  将其构造为数组。

例子:

<?php
$flag = "flag{xxxxx}";
if (isset($_GET['a'])) {
if (strcmp($_GET['a'], $flag) == 0) 
die('Flag: '.$flag);
else
print 'No';
}
?>

payload:  ?a[]=任意字符  这里输入?a[]=admin   即可获得flag!

总结整理自:https://blog.csdn.net/cherrie007/article/details/77473817

分类:

技术点:

相关文章:

  • 2021-09-24
  • 2021-09-29
  • 2021-09-29
  • 2020-10-06
  • 2021-11-20
  • 2021-12-18
  • 2021-11-06
  • 2021-10-28
猜你喜欢
  • 2021-08-22
  • 2021-06-02
  • 2021-10-03
  • 2021-11-03
  • 2021-11-04
  • 2021-11-27
  • 2021-07-17
相关资源
相似解决方案