加入收藏 | 设为首页 | 会员中心 | 我要投稿 晋中站长网 (https://www.0354zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php注释 CTF学习笔记-PHP

发布时间:2022-10-22 14:32:13 所属栏目:PHP教程 来源:转载
导读: PHP语法
(1) 、PHP 脚本以 结束。在标签外的普通文本会直接输出显示。
(2) 、PHP 脚本可以放在文档中的任何位置。
(3) 、PHP 中的多行代码之间都必须以分号结束。分号是一种分隔符,用于把

PHP语法

(1) 、PHP 脚本以 结束。在标签外的普通文本会直接输出显示。

(2) 、PHP 脚本可以放在文档中的任何位置。

(3) 、PHP 中的多行代码之间都必须以分号结束。分号是一种分隔符,用于把指令集区分开来。

(4) 、通过 PHP,有两种在浏览器输出文本的基础指令:echo 和 print。其中两者都不需加括号。

(5) 、PHP 中的注释分为单行注释与多行注释,单行注释可使用井号(#)或者双斜杠(//)。多行注释使用/*注释内容*/。

(6) 、PHP 变量规则: 变量以 $ 符号开始,后面跟着变量的名称 变量名必须以字母或者下划线字符开始 变量名只能包含字母数字字符以及下划线(A-z、0-9 、 _ 和ASCII 字符从127 到255(0x7f-0xff)) 变量名不能包含空格 变量名是区分大小写的($y 和 $Y 是两个不同的变量) 我们注意到,不必向 PHP 声明该变量的数据类型。PHP 会根据变量的值,自动把变量转换为正确的数据类型。

(7) PHP数组有下面几种定义方式,在未定义下标值时,默认按数字顺序为下标赋值。echo或者print不支持输出数组,需要使用print_r或者var_dump进行输出

PHP弱类型比较

定义:两个变量不匹配的时候,PHP会自动地 进行变量转换。但是PHP是一个弱类型的语 言,导致在进行类型转换的时候会存在很多意想不到的问题。在php中存在松散比较与严格比较,其中松 散比较使用==php注释,严格比较使用===。

类型转换:php在进行变量比较时,会自动转换为相同类型进行比较。

进制转换:在进制数与字符串比较时会进行转换成相同类型再进行比较。

Hash比较:

1、当字符串前面以0e开头并且后面均为数字时,会被当成科学计数法处理,0en代表0乘10的n次方,结果均为0。 所以找到md5后的结果符合上面条件的即可绕过。

2、当传入md5函数中的值为数组时,返回NULL。

PHP变量覆盖

定义:变量覆盖是指用我们自定义的参数值替换程序原有的变量值,一般变量覆盖漏洞需要结合程序的其他功能来实现完整的攻击。 一般由函数使用不当导致。经常引发变量覆盖漏洞的函数有:extract(), parse_str(), import_request_variable() 单独变量覆盖一般难以利用,要和其他漏洞结合起来才能完成攻击。

(编辑:晋中站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!