午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術(shù)文章
文章詳情頁

PHP安全-HTTP請(qǐng)求欺騙

瀏覽:208日期:2022-09-12 09:28:06
HTTP請(qǐng)求欺騙

一個(gè)比欺騙表單更高級(jí)和復(fù)雜的攻擊方式是HTTP請(qǐng)求欺騙。這給了攻擊者完全的控制權(quán)與靈活性,它進(jìn)一步證明了不能盲目信任用戶提交的任何數(shù)據(jù)。

為了演示這是如何進(jìn)行的,請(qǐng)看下面位于http://example.org/form.php的表單:

CODE:

<form action='process.php' method='POST'>

<p>Please select a color:

<select name='color'>

<option value='red'>Red</option>

<option value='green'>Green</option>

<option value='blue'>Blue</option>

</select><br />

<input type='submit' value='Select' /></p>

</form>

如果用戶選擇了Red并點(diǎn)擊了Select按鈕后,瀏覽器會(huì)發(fā)出下面的HTTP請(qǐng)求:

CODE:

POST /process.php HTTP/1.1

Host: example.org

User-Agent: Mozilla/5.0 (X11; U; Linux i686)

Referer: http://example.org/form.php

Content-Type: application/x-www-form-urlencoded

Content-Length: 9

color=red

.

看到大多數(shù)瀏覽器會(huì)包含一個(gè)來源的URL值,你可能會(huì)試圖使用$_SERVER[’HTTP_REFERER’]變量去防止欺騙。確實(shí),這可以用于對(duì)付利用標(biāo)準(zhǔn)瀏覽器發(fā)起的攻擊,但攻擊者是不會(huì)被這個(gè)小麻煩給擋住的。通過編輯HTTP請(qǐng)求的原始信息,攻擊者可以完全控制HTTP頭部的值,GET和POST的數(shù)據(jù),以及所有在HTTP請(qǐng)求的內(nèi)容。

攻擊者如何更改原始的HTTP請(qǐng)求?過程非常簡單。通過在大多數(shù)系統(tǒng)平臺(tái)上都提供的Telnet實(shí)用程序,你就可以通過連接網(wǎng)站服務(wù)器的偵聽端口(典型的端口為80)來與Web服務(wù)器直接通信。下面就是使用這個(gè)技巧請(qǐng)求http://example.org/頁面的例子:

CODE:

$ telnet example.org 80

Trying 192.0.34.166...

Connected to example.org (192.0.34.166).

Escape character is ’^]’.

GET / HTTP/1.1

Host: example.org

HTTP/1.1 200 OK

Date: Sat, 21 May 2005 12:34:56 GMT

Server: Apache/1.3.31 (Unix)

Accept-Ranges: bytes

Content-Length: 410

Connection: close

Content-Type: text/html

<html>

<head>

<title>Example Web Page</title>

</head>

<body>

<p>You have reached this web page by typing &quot;example.com&quot;,

&quot;example.net&quot;, or &quot;example.org&quot; into your web browser.</p>

<p>These domain names are reserved for use in documentation and are not

available for registration. See

<a >RFC 2606</a>, Section

3.</p>

</body>

</html>

Connection closed by foreign host.

$

上例中所顯示的請(qǐng)求是符合HTTP/1.1規(guī)范的最簡單的請(qǐng)求,這是因?yàn)镠ost信息是頭部信息中所必須有的。一旦你輸入了表示請(qǐng)求結(jié)束的連續(xù)兩個(gè)換行符,整個(gè)HTML的回應(yīng)即顯示在屏幕上。

Telnet實(shí)用程序不是與Web服務(wù)器直接通信的唯一方法,但它常常是最方便的??墒侨绻阌肞HP編碼同樣的請(qǐng)求,你可以就可以實(shí)現(xiàn)自動(dòng)操作了。前面的請(qǐng)求可以用下面的PHP代碼實(shí)現(xiàn):

CODE:

<?php

$http_response = ’’;

$fp = fsockopen(’example.org’, 80);

fputs($fp, 'GET / HTTP/1.1rn');

fputs($fp, 'Host: example.orgrnrn');

while (!feof($fp))

{

$http_response .= fgets($fp, 128);

}

fclose($fp);

echo nl2br(htmlentities($http_response, ENT_QUOTES, ’UTF-8’));

?>

當(dāng)然,還有很多方法去達(dá)到上面的目的,但其要點(diǎn)是HTTP是一個(gè)廣為人知的標(biāo)準(zhǔn)協(xié)議,稍有經(jīng)驗(yàn)的攻擊者都會(huì)對(duì)它非常熟悉,并且對(duì)常見的安全漏洞的攻擊方法也很熟悉。

相對(duì)于欺騙表單,欺騙HTTP請(qǐng)求的做法并不多,對(duì)它不應(yīng)該關(guān)注。我講述這些技巧的原因是為了更好的演示一個(gè)攻擊者在向你的應(yīng)用輸入惡意信息時(shí)是如何地方便。這再次強(qiáng)調(diào)了過濾輸入的重要性和HTTP請(qǐng)求提供的任何信息都是不可信的這個(gè)事實(shí)。

標(biāo)簽: PHP
相關(guān)文章:
主站蜘蛛池模板: 国产一级大片在线观看 | 91国内在线 | 亚洲男人天堂视频 | 欧美日韩在线一区二区三区 | 亚洲欧美日韩久久 | 欧美日韩一区二区三区 | 三级在线视频 | 国产精品三 | 少妇一区 | 亚洲欧美一二三区 | 蜜臀久久99精品久久久 | 超碰在线人人草 | 欧美激情视频网 | 日本www黄 | 香蕉尹人网| 翔田千里在线视频 | 日韩欧美在线观看视频 | 欧美成人免费在线 | 久久久久亚洲精品国产 | 中文天堂在线播放 | 免费色网址 | 黄色一级在线 | 91a视频 | 国产裸体永久免费无遮挡 | 成人福利在线观看 | 午夜视频1000 | 欧美日本高清 | 国产一区二区三区在线观看视频 | 午夜国产精品视频 | 午夜色av | 一级黄色片欧美 | 日韩免费久久 | 日韩在线播放视频 | 91av手机在线| 91精品视频一区 | 国产精品视频在线看 | 亚洲精品视频一区二区 | 日本中文字幕视频 | 日韩在线观看网站 | 日韩av一区二区在线观看 | 亚洲日本高清 |