PHP代码审计 01 基础知识

1.4 代码审计平台

  1. DVWA [ GitHub的链接(https://github.com/ethicalhack3r/DVWA
    1. ZVulDrill [ GitHub的链接(https://github.com/710leo/ZVulDrill

# 2.#注释1.单行注释= > //单行注释2.多行注释=> / \ 多行注释\ /

# 3.单引号和双引号#1.单引号不解析变量2.双引号解析变量 AAA = ‘123’ 回声 a a a => aaa echo“$ aaa”=>结果为123

# 4。输出函数#1. echo或者print:最简单的输出方法2。print _ r,var _

dump(var_export)、debug_zval_dump:输出变量数据值,特别是数组和对象数据

  1. var_dump 会额外输出数据类型

  2. print_r:输出格式很整齐,跟var_dump 的区别是没有类型数据,并且布尔值的 false 和 NULL 输出为空

1.简介## 1.在php中可由用户操作的全局变量列表如下: G L O B A L S SERVER - 服务器和执行环境信息 G E T H T T P G E T _POST - HTTP POST变量 F I L E S H T T P _REQUEST - HTTP请求变量 S E S S I O N _ENV - 环境变量 C O O K I E H T T P C o o k i e s 2. HTTP _ COOKIE_VARS H T T P E N V V A R S _ HTTP _ GET_VARS H T T P P O S T F I L E S _ HTTP _

POST_VARS
$_HTTP_SERVER_VARS

2.超全局变量示例## 1. G L O B A L S < p h p moon =“1”; echo G L O B A L S [ m o o n ] ; > 1 < p h p f u n c t i o n t e s t e c h o $ m o o n = 2 ; e c h o $ G L O B A L S [ m o o n ] ; moon =“1”; 测试(); ?>#显示结果为21#函数内部为局部变量,不被 G L O B A L S 2. SERVER test1.php <?php print r( S E R V E R ; > t e s t 2. p h p < p h p SERVER =’aaaaaa’; 服务器); ?>输出结果为服务器的配置信息![](https://i.imgur.com/NxGTsQ1.png) 输出结果可以被覆盖 ![](https://i.imgur.com/W6GgqVz.png)3。 G E T t e s t . p h p < P H P R _ GET); ?>输出结果为URL中的GET变量的数据![](https://i.imgur.com/30xFhlN.png)4。 P O S T t e s t . p h p < p h p p r i n t r _ POST); 输入结果为URL中的POET变量的数据5。 F I L E S 1. f i l e . h t m l < f o r m a c t i o n = t e s t . p h p m e t h o d = p o s t e n c t y p e = m u l t i p a r t / f o r m d a t a >< l a b l e f o r = f i l e > < / l a b l e >< i n p u t t y p e = = I D = / >< B R / >< I N P U T T Y P E = = = / >< / F O R M > 2. > [ ] h t t p s : / / i . i m g u r . c o m / 0 a q k m X B . p n g 6 _REQUEST test1。

        print_r($_REQUEST);
        ?>

    test2.php
        <?php
        $ _REQUEST = 'AAAAAA'; 
        的print_r($ _ REQUEST); 
        ?>  输出结果可以被覆盖   ![](https://i.imgur.com/W6GgqVz.png)

7。 S E S S I O N t e s t 1. p h p < p h p p r i n t r _ SESSION); ?> test2.php <?php S E S S I O N = a a a a a a ; p r i n t r _ SESSION); ?> 输出结果可以被覆盖![ ] (https://i.imgur.com/W6GgqVz.png ) 8。 E N V t e s t 1. p h p < p h p p r i n t r _ ENV); ?>

    test2.php
        <?php
        $_ENV='aaaaaa';
        print_r($_ENV);
        ?>

    test3.php
        <?php
        print_r($_ENV['OS']='bbbbbb');
        ?>

输出结果可以被覆盖![ ] (https://i.imgur.com/W6GgqVz.png )![ ] (https://i.imgur.com/XROLZ85.png )

9。 C O O K I E t e s t . p h p < p h p p r i n t r _曲奇饼); ?> 输出结果为cookie值

猜你喜欢

转载自blog.csdn.net/Kevinhanser/article/details/81134211