background image

PHP 漏洞全解()-跨网站请求伪造

本文主要介绍针对 PHP 网站的跨网站请求伪造。在 CSRF 所有攻击方式中包含攻击者伪造一个看起来是

 

其他用户发起的 HTTP 

 

请求,事实上,跟踪一个用户发送的 HTTP 请求才是攻击者的目的。

CSRF(Cross Site Request Forgeries),意为跨网站请求伪造,也有写为 XSRF。攻击者伪造目标用户
的 HTTP 请求,然后此请求发送到有 CSRF 漏洞的网站,网站执行此请求后,引发跨站请求伪造攻击。
攻击者利用隐蔽的 HTTP 连接,让目标用户在不注意的情况下单击这个链接,由于是用户自己点击的,
而他又是合法用户拥有合法权限,所以目标用户能够在网站内执行特定的 HTTP 链接,从而达到攻击者
的目的。

例如:某个购物网站购买商品时,采用

http://www.shop.com/buy.php?item=watch&num=1

item 参

数确定要购买什么物品,num 参数确定要购买数量,如果攻击者以隐藏的方式发送给目标用户链接

,那么如果目标用户不小心访问以后,购买的数量就成了 1000 个

实例

随缘网络 PHP 留言板 V1.0

任意删除留言

//delbook.php 此页面用于删除留言

1. <?php 
2.

include_once

(

"dlyz.php"

); 

//dlyz.php 用户验证权限,当权限是 admin 的时候方可删

除留言

 

3.

include_once

(

"../conn.php"

); 

4.

$del

=

$_GET

[

"del"

]; 

5.

$id

=

$_GET

[

"id"

]; 

6.

if

 (

$del

==

"data"

7. { 
8.

    $ID_Dele

= implode(

","

,

$_POST

[

'adid'

]); 

9.

    $sql

=

"delete from book where id in ("

.

$ID_Dele

.

")"