旅游网站建设电子商务的困惑,百度权重排名高的网站,天津企业模板建站哪个好,用wordpress修改现有网页这道题有点东西网页一段计算框#xff0c;只有加和减数字#xff0c;但是永远到大不了20#xff0c;页面也没啥特别的#xff0c;准备看源码#xff0c;但是打不开#xff0c;我以为是环境坏掉了#xff0c;看wp别人也这样#xff0c;只不过大佬的开发者工具可以打开只有加和减数字但是永远到大不了20页面也没啥特别的准备看源码但是打不开我以为是环境坏掉了看wp别人也这样只不过大佬的开发者工具可以打开我的就不行 最后试了一下你要么就在网页右上角更多工具里面手动打开要么就另外打开一个网页然后先打开开发者工具再加载题目url 在代码此处有一段src标签好像是一个JavaScript的代码但是利于工具看的时候页面并没有对应回显看起来是个路径可以访问一下 js看不懂但是在最后又一段base64加密的字符串我还以为flag就拿到了 解密后才发现依旧是一个文件应该也可以访问 保险起见我还是去提交了一下果然是错误的哈哈 代码审计
访问后是一段php代码 1. 第一行代码error_reporting(0);用于禁止错误报告。 2. 然后通过include(flag.php)包含了一个名为flag.php的文件。 3. 接下来定义了一个名为nss的类其中有一个名为ctf()的静态方法。包含了hint2.php 4. 在接下来的代码中通过isset($_GET[p])检查$_GET[p]是否存在。如果存在就进入下一层判断。 5. 在第6行代码中使用preg_match()函数对$_GET[p]进行正则匹配判断其是否含有字母n或c。如果匹配成功就输出no并结束脚本的执行。 6. 在第7行代码中使用了call_user_func()函数根据$_GET[p]的值调用对应的函数。call_user_func()函数用于调用一个回调函数。这里回调函数的名称由$_GET[p]指定。 hint2.php是可以直接访问的但是完全看不懂有啥关联 一开始想的是直接用命令执行但是不行后来查看了wp才得知我们要利用的东西就是nss类一开始我看直接就可以访问hint2.php我还以为就没他啥事儿了呢
这里还要学习一个新的运算符 ::双冒号运算符
我们可以直接利用双冒号运算符去访问类中的方法因为正则表达式中匹配到了n和c但是用到的修饰符是/m多文本匹配所以我们可以采用大小写看能否绕过所以构造payload 得到hint2.php文件的数据根据提示修改payload访问后看源码得到flag ::双冒号运算符
在PHP中::是一个双冒号运算符也被称为范围解析操作符或静态访问操作符。它用于访问类中的静态属性、静态方法和常量或调用父类的静态方法。
在类名后面使用::可以直接访问类的静态成员或调用静态方法而无需创建类的实例。这使得我们无需实例化一个类就可以访问和操作类级别的成员。 1. 访问静态属性
class MyClass {public static $myStaticProperty 10;}echo MyClass::$myStaticProperty; // 输出 10