2018最新代码审计教程笔记-代码审计入门

由于之前的学习不是非常的系统,故此重新整理学习代码审计”,博客也更新相关内容。

 

0x01:调试函数

echo (print): 这是最简单的输出数据调试方法,一般用来输出变量值,或者你不确定程序执行 到了哪个分支的情况下是用。

print_rvar_dump(var_export)debug_zval_dump 这个主要是用来输出变量数据值,特别是数组和对象数据,一般我们在查看接口 返回值,或者某些不太确定变量的时候,都可以使用这两个 API

var_dump 会额外输出数据类型: print_r 输出:格式很整齐,跟 var_dump 的区别是没有类型数据,并且布尔值 的 false 和值 NULL 输出为空 var_export 输出,所有的数据是可以作为组织好的变量输出的,都是能够作为 直接赋值使用: 需要注意的一点是, var_export 对于资源型的变量会输出 NULL debug_zval_dump 输出结果跟 var_dump 类似,唯一增加的一个值是 refcount, 就是记录一个变量被引用了多少次,这是 php copy on write (写时复制) 的 机制的一个重要特点。

exit()退出函数

 

0x02:注释

// 这是单行注释

/* 这个是多行注释 */

 

0x03: 单引号跟双引号的区别

双引号解析变量 单引号不解析变量

 

0x04:超全局变量

超全局变量 — 超全局变量是在全部作用域中始终可用的内置变量

php 中可由用户操作的全局变量列表如下:

$GLOBALS — 引用全局作用域中可用的全部变量

$_SERVER — 服务器和执行环境信息

$_GET HTTPGET 变量

$_POST HTTPPOST 变量

$_FILES HTTP 文件上传变量

$_REQUEST HTTPRequest 变量

$_SESSION Session 变量

$_ENV — 环境变量

$_COOKIE HTTPCookies

 

0x05:命令注入

攻击:

PHP 执行系统命令可以使用以下几个函数:

Linux Unix Windos

systemexecpassthru``(反引号)shell_execpopenproc_openpcntl_exec

语法:

String system (string$command[,int&$return_var

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值