亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

用mod_security保障Web Services的安全二

2019-11-18 12:26:58
字體:
來源:轉載
供稿:網友

  將Web服務與mod_security結合起來
  
  Blue銀行的web服務使用www.bluebank.example.com/axis/getBalance.jws的URL。為這個資源創建一套規則通常一個不錯的主意。為達此目的,Blue銀行將此資源通過以下方式加入到httpd.conf:
  
  <IfModule mod_security.c>
  SecFilterEngine On
  SecFilterDefaultAction "deny,log,status:500"
  # Other rules
  # ------- Rules for web services --------------------------
  <Location /axis/getBalance.jws>
  SecFilterInheritance Off
  SecFilterDefaultAction "deny,log,status:500"
  SecFilterScanPOST On
  SecFilterCheckURLEncoding On
  SecFilterCheckUnicodeEncoding On
  </Location>
  #---------------------------------------------------------------</IfModule>
  
  下面的指令塊為/axis/getBalance.jws應用了過濾標準。為了保護web服務它添加了必要的規則。這些規則在<Location>塊中,如下:
  
  # ------- Rules for web services --------------------------
  <Location /axis/getBalance.jws>
  SecFilterInheritance Off
  SecFilterDefaultAction "deny,log,status:500"
  SecFilterScanPOST On
  SecFilterCheckURLEncoding On
  SecFilterCheckUnicodeEncoding On</Location>
  #---------------------------------------------------------------
  
  在這里有兩個重要的指令:
  
  SecFilterInheritance Off
  
  這個指令關閉其他所有規則,為新的location建立一套規則創建一個干凈的空間。(譯者注:初始化,建立新空間)
  
  SecFilterScanPOST On
  
  由于web服務的方法調用是通過POST,所以這個指令是打開POST過濾器。
  
  有了上面的配置,Blue Bank已經在mod_security中部署了一個“護盾”(譯者注:防火墻)。該“護盾”也知道它的防護目標——客戶端通過SOAP封套發送的id的內容。
  
  防范攻擊
  
  作為防護所有惡意請求的第一步,Blue銀行需要限制從客戶端發送的id的值,防止傳來無效值。SOAP請求用xml標簽將id信息發送到web服務的代碼中,像如下這樣:
  
  <q1:getInput xmlns:q1="http://DefaultNamespace">
  <id xsi:type="xsd:string">12123</id></q1:getInput>
  
  為了過濾該請求,mod_security必須有一些途徑去讀取與標簽相關的值(在這里標簽是id);這個例子中的值是12123,mod_security提供一些途徑限制通過POST請求發送的值。其中的一個方法就是使用自定義過濾器:
  
  <Location /axis/getBalance.jws>
  SecFilterInheritance Off
  SecFilterDefaultAction "deny,log,status:500"
  SecFilterScanPOST On
  SecFilterCheckURLEncoding On
  SecFilterCheckUnicodeEncoding On
  SecFilterSelective POST_PAYLOAD "</s*id[^>]*>" chain</Location>
  
  上面標示出來的行對請求中的id進行限制。POST_PAYLOAD截取POST數據塊并與正則表達式(</s*id[^>]*>)進行匹配。該正則表達式確保id標簽存在,當存在的情況下才進行其余的檢查。換句話說,假如id標簽存在,mod_security繼續下一個檢查。
  
  假如發送的POST請求中存在一個id,服務器能夠執行信息。然而,一個惡意的客戶端能夠修改這個值加入惡意內容。有四種最流行的攻擊方式。
  
  攻擊方式1:變量長度緩沖區注入(譯者注:緩沖區溢出)
  
  當把一個大的緩沖數據傳給一個變量時可能會引起應用程序運行不正?;蛘咴趫绦械臅r候“宕”掉的安全隱患。下面的規則將保護id變量免受此類攻擊:
  
  <Location /axis/getBalance.jws>
  SecFilterInheritance Off
  SecFilterDefaultAction "deny,log,status:500"
  SecFilterScanPOST On
  SecFilterCheckURLEncoding On
  SecFilterCheckUnicodeEncoding On
  SecFilterSelective POST_PAYLOAD "</s*id[^>]*>" chain
  SecFilterSelective POST_PAYLOAD "</s*id[^>]*>.{6,}<//s*id/s*>""deny,status:500"</Location>
  
  在上面的指令中,正則表達式</s*id[^>]*>.{6,}<//s*id/s*>限制緩沖變量的長度為5個字符。為了檢查上面的代碼塊是否起作用,Blue銀行可以發送兩個請求,一個請求符合約束,另一個越界。
  
  POST /axis/getBalance.jws HTTP/1.0Content-Type: text/xml; charset=utf-8SOAPAction: ""Content-Length: 576EXPect: 100-continueHost: www.bluebank.example.com<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"xmlns:tns="http://www.bluebank.example.com/axis/getBalance.jws" xmlns:types="http://www.bluebank.example.com/axis/getBalance.jws/encodedTypes"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Bodysoap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
  <q1:getInput xmlns:q1="http://DefaultNamespace">
  <id xsi:type="xsd:string">12123</id>
  </q1:getInput>
  </soap:Body></soap:Envelope>...HTTP/1.1 200 OKDate: Mon, 03 Jan 2005 19:24:10 GMTServer: Apache/2.0.50 (Unix) mod_ssl/2.0.50 OpenSSL/0.9.7d mod_jk2/2.0.4Set-Cookie: JSESSIONID=69C6540CC427A8B064C0795ADDFC20EA; Path=/axisContent-Type: text/xml;charset=utf-8Connection: close<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"        xmlns:xsd="http://www.w3.org/2001/XMLSchema"        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soapenv:Body>
  <ns1:getInputResponsesoapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
  xmlns:ns1="http://DefaultNamespace">
  <ns1:getInputReturnxsi:type="xsd:string">$2500</ns1:getInputReturn>
  </ns1:getInputResponse>
  </soapenv:Body></soapenv:Envelope>
  
  在上面的例子中,將一個包含5個字符的緩沖數據傳給web服務,服務收到后發回一個響應值為$2500。下面的例子將更改12123這個數據為121234,新的數據有6個字符,將得到一個新的響應信息,如下:
  
  POST /axis/getBlalance.jws HTTP/1.0Content-Type: text/xml; charset=utf-8SOAPAction: ""Content-Length: 577Expect: 100-continueHost: www.bluebank.example.com<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"xmlns:tns="http://www.bluebank.example.com/axis/getBalance.jws" xmlns:types="http://www.bluebank.example.com/axis/getBalance.jws/encodedTypes"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:xsd="http://www.w3.org/2001/XMLSchema">    <soap:Bodysoap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
  <q1:getInput xmlns:q1="http://DefaultNamespace">
  <id xsi:type="xsd:string">121234</id>
  </q1:getInput>
  </soap:Body></soap:Envelope>...HTTP/1.1 500 Internal Server ErrorDate: Mon, 03 Jan 2005 22:00:33 GMTServer: Apache/2.0.50 (Unix) mod_ssl/2.0.50 OpenSSL/0.9.7d mod_jk2/2.0.4Content-Length: 657Connection: closeContent-Type: text/Html; charset=iso-8859-1<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"><html><head>  <title>500 Internal Server Error</title> </head><body> <h1>Internal Server Error</h1> <p>The server encountered an internal error or misconfiguration and was unable to complete your request.</p> <p>Please contact the server administrator, you@example.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.</p>
  <p>More information about this error may be available in the servererror log.</p> <hr />
  <address>Apache/2.0.50 (Unix) mod_ssl/2.0.50 OpenSSL/0.9.7dmod_jk2/2.0.4 Server at 192.168.7.50 Port 80</address></body></html>
  
  mod_security模塊拒絕了該請求。返回500狀態。這說明請求根本沒有到達web服務層。Blue 銀行成功地防范了最常見和經常被忽略的緩沖區溢出攻擊。(譯者注:HTTP定義的500狀態是服務器執行錯誤)
  
  第二種攻擊:元字符注入
  
  另外一個主要的針對輸入變量的威脅來自于使用像%,單引號(’),雙引號(”)。這些字符會導致SQL注入攻擊,并且可能會導致不必要的信息泄漏。采用下面的策略將保護web服務防范此類攻擊。
  
  <Location /axis/getBalance.jws>
  SecFilterInherita

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
97色在线视频| 久久视频在线看| 亚洲高清免费观看高清完整版| 欧美日韩成人在线视频| 久久天堂av综合合色| 91最新在线免费观看| 中文字幕亚洲一区二区三区五十路| 亚洲欧美日本另类| 自拍偷拍亚洲精品| 久久久黄色av| 国产一区二区三区在线视频| 日韩av网站导航| 国产精品色午夜在线观看| 国产成人啪精品视频免费网| 精品久久久免费| 久久色精品视频| 欧美国产日产韩国视频| 中文字幕av一区中文字幕天堂| 国产精品女主播| 亚洲成在人线av| 国产成人精品一区二区在线| 亚洲片av在线| 午夜美女久久久久爽久久| 欧美性视频精品| 亚洲自拍偷拍区| 一区二区亚洲欧洲国产日韩| 97香蕉超级碰碰久久免费的优势| www.久久久久久.com| 欧美成人免费全部观看天天性色| 欧美日韩亚洲一区二区| 欧美成人在线免费| 2019精品视频| 久久精品视频导航| 国产精品久久电影观看| 亚洲在线观看视频| 久久九九热免费视频| 久久久999精品视频| 国产综合在线视频| 亚洲男人的天堂在线| 麻豆国产精品va在线观看不卡| 日韩二区三区在线| 国产免费一区二区三区在线观看| 国产精品视频导航| 国产亚洲欧洲高清| 一区二区三区高清国产| 日韩电影第一页| 国产精品jizz在线观看麻豆| 日韩a**站在线观看| 91精品免费看| 国产成人精品优优av| 91精品国产99| 在线观看精品自拍私拍| 久久精品视频亚洲| 538国产精品一区二区在线| 国产成人高潮免费观看精品| 亚洲乱亚洲乱妇无码| 精品日韩视频在线观看| 国产精品丝袜白浆摸在线| 精品女厕一区二区三区| 国产视频精品在线| 91在线视频免费| 午夜精品一区二区三区在线视频| 国产精品自拍小视频| 久久久久久噜噜噜久久久精品| 久久在精品线影院精品国产| 国外日韩电影在线观看| 91天堂在线观看| 久久久女人电视剧免费播放下载| 亚洲欧洲国产伦综合| 久久久国产一区二区三区| 欧美精品18videos性欧美| 欧美性猛交xxxx富婆| 国产成人精品av| 欧美日韩中国免费专区在线看| 国产精品福利小视频| 日韩欧美国产激情| 亚洲精品美女免费| 欧美激情视频网| 97色在线视频观看| 欧美天天综合色影久久精品| 国产亚洲综合久久| 欧美成人免费va影院高清| 日韩性xxxx爱| 亚洲男人第一网站| 欧美三级免费观看| 海角国产乱辈乱精品视频| 在线日韩欧美视频| 美乳少妇欧美精品| 成人黄色中文字幕| 国产精品流白浆视频| 精品福利一区二区| 欧美激情国产日韩精品一区18| 欧美激情a在线| 91在线直播亚洲| 不卡毛片在线看| 亚洲人成电影网站色www| 国产一区二区三区中文| 欧美午夜性色大片在线观看| 国产欧美一区二区三区四区| 久久久国产一区二区| xxxx欧美18另类的高清| 成人啪啪免费看| 最近2019年好看中文字幕视频| 久久久亚洲影院你懂的| 国产成人a亚洲精品| 久久综合国产精品台湾中文娱乐网| www日韩中文字幕在线看| 国产精品久久久久久久久久久新郎| 中文字幕亚洲天堂| 亚洲在线观看视频| 日韩福利伦理影院免费| 欧美乱妇高清无乱码| 51视频国产精品一区二区| 91av在线精品| 中文字幕亚洲欧美在线| 另类图片亚洲另类| 欧美精品中文字幕一区| 亚洲v日韩v综合v精品v| 国产香蕉精品视频一区二区三区| 欧美黄网免费在线观看| 亚洲奶大毛多的老太婆| 久久精品亚洲94久久精品| 国语自产精品视频在线看| 欧美最猛黑人xxxx黑人猛叫黄| 992tv在线成人免费观看| 精品中文字幕久久久久久| 欧美性xxxx极品hd欧美风情| 久久久在线免费观看| 亚洲韩国青草视频| 综合欧美国产视频二区| 欧洲成人在线视频| 国产精品久久久久久久久久99| 亚洲欧美另类国产| 国产日韩精品综合网站| 亚洲国产精品视频在线观看| 黄色成人在线播放| 亚洲精品视频网上网址在线观看| 亚洲а∨天堂久久精品9966| xxxxxxxxx欧美| 欧美视频精品一区| 国产精品黄视频| 91在线国产电影| 国产精品美女午夜av| 亚洲国产精品成人av| 欧美电影在线观看| 在线观看日韩专区| 国产91精品黑色丝袜高跟鞋| 亚洲成年人影院在线| 日韩福利在线播放| 国产这里只有精品| 欧美精品在线网站| 亚洲精品一区在线观看香蕉| 国产女人精品视频| 国产精品电影久久久久电影网| 国产99久久精品一区二区| 欧美性猛交xxxx免费看久久久| 亚洲精品成人久久久| 国产一区二区三区中文| 国产精品视频男人的天堂| 欧美一级电影免费在线观看| 久久久国产精品亚洲一区| 亚洲视频999| 亚洲精品久久7777777| 欧美一区二区三区艳史|