◆周志勇
?
電子政務系統數據傳輸過程中的安全風險分析及防護
◆周志勇
(河北省國家稅務局信息中心 河北 050000)
HTTP協議自身機制存在缺陷,容易導致敏感數據被竊取。隨著《中華人民共和國網絡安全法》的頒布施行,全方位保護電子政務系統網絡安全的要求進一步提高,將HTTP協議改造為安全性較高HTTPS協議勢在必行,本文中對HTTP協議的脆弱性進行了分析、驗證,介紹了HTTPS協議的實現原理,并給出了基于Ngix服務器的實現。
電子政務;數據安全;Ngix
從二十世紀末的“政務電子化”作為政府輔助優化決策的管理手段,到后來“政府再造”政府機構使用相互獨立的信息系統,再到如今建立起來的G2G、G2B以及G2C網上通信渠道,便捷、智能、高效的電子政務迅速發展起來。[1]有資料顯示,截至2016年底,全國各類政府網站已有將近10萬個,中國電子政務在全球排名第63位[2],大量行政審批工作已經實現了網上受理、網上辦理。電子政務系統涉及大量的敏感信息,在人們隱私保護意識日益提高的今天,如何保護這些敏感信息不被非法訪問、竊取已成為一個現實問題。傳統安全防護的注意力一般都集中在后臺,采用劃分安全域、數據加密存儲、提高數據庫管理系統及操作系統安全性多種方法進行防范,而數據從用戶端到服務端傳輸的過程的數據安全人們關注較少[3]。HTTP協議作為目前應用最廣的應用層協議,敏感信息以近似明文的方式在網絡中傳輸,很容易被截獲、竊取[4]。HTTPS技術作為一種成熟有效的傳輸防護措施,目前已被主流電子商務網站采用,而在電子政務領域,人們對其重要性認識還不夠。
超文本傳輸協議(HTTP,HyperText Transfer Protocol)是互聯網上應用最為廣泛的一種網絡協議,其脆弱性主要來自數據的明文傳輸,目前已經有多種方法實現了對使用HTTP協議傳輸數據的竊取[5]。以某單位網上咨詢平臺為例,簡單分析HTTP協議傳輸敏感數據的危險性。
該平臺是為納稅人提供在線咨詢的互聯網應用,用戶通過HTTP協議訪問,進行在線交流、問題解答等。我們通過一個實驗來演示用戶注冊名、密碼等敏感信息的泄露過程。實驗工具為接入同一個HUB中兩臺PC機,抓包軟件Wireshark,登錄用的用戶名為helloworld,密碼是123456。
實驗過程如下:
(1)設置兩臺PC機地址為192.18.1.1、192.18.1.2。
(2)在192.18.1.1上啟動Wireshark,選擇捕獲數據所用的接口,對此接口上的數據進行監聽。
(3)在192.18.1.2上打開網上咨詢平臺,并輸入用戶名密碼進行登錄。
(4)停止Wireshark的監聽,篩選出目的地址是網絡咨詢平臺IP,協議為HTTP的數據包。
(5)對數據包進行分析,找到明文傳輸的用戶名、密碼。
實驗結果如圖1所示,我們可以在抓取的HTTP包中查看到局域網中另一臺PC上輸入的用戶名、密碼等敏感信息。
明文傳輸的敏感信息也很容易在傳輸過程中被各種網絡設備緩存、記錄,一些網絡爬蟲可以將這些信息爬取,從而通過互聯網泄露。同樣是這次登錄,可以在訪問鏈路上的某設備日志中看到登錄使用的用戶名、密碼。如圖2所示。

圖1 實驗結果展示

圖2 代碼展示
為規避HTTP協議在傳輸敏感信息時可能被竊取的風險,網景公司(Netscape)為HTTP增加了安全套接字層(SSL),實現了傳輸數據的加密,形成了安全版的HTTP協議,即HTTPS。安全套接字層利用數字證書作為加密密鑰的載體,綜合利用了古典加密算法加解密操作系統開銷小和現代加密算法安全性高的優點,有效的保護了數據在網絡傳輸過程的安全。
目前,主流的WEB服務器如Weblogic、Tomcat、Ngix、IIS等都支持HTTPS。下面以目前大型網站常用的Ngix服務器為例說明:
HTTPS協議需要在WEB服務器端部署數字證書。這個數字證書可以自己生成,或向第三方機構申請,得到證書后,將其導入WEB服務器。自己生成、導入數字證書的操作如下:
2.1創建數字證書
cd /etc/nginx/
opensslgenrsa -des3 -outserver.key1024
opensslreq -new -key server.key -outserver.csr
cpserver.key server.key.org
opensslrsa -in server.key.org -outserver.key
openssl x509 -req -days 365 -inserver.csr -signkeyserver.key -out server.crt
2.2配置Ngix服務器
cd /etc/nginx
vimnginx.conf
server {
listen 443;
server_name本機的IP地址;
ssl on;
ssl_certificate /etc/nginx/server.crt;
ssl_certificate_key /etc/nginx/server.key;
ssl_session_timeout 5m;
ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
location / {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_passHTTP://IP地址/ssl/;
}
}
2.3配置端口重定向
用戶默認使用HTTP協議訪問網頁的,為使用戶的HTTP訪問自動轉化為HTTPS的訪問,需要配置端口重定向,即將訪問服務器的80端口重新定向到443端口。以Ngix為例,需要將80端口的配置文件添加如下內容:
server{
listen 80;
server_name localhost;
rewrite ^(.*)$ HTTPS://$host$1 permanent;
location/{
root html;
index index.html index.htm;
}
這樣,一個網站就由HTTP訪問變成通過HTTPS訪問的了,即使密文傳輸的敏感數據被截獲,也很難還原出明文來。
HTTPS作為一種保障傳輸過程安全的解決方案,具有實現簡單、可靠性高、用戶體驗好的特點,隨著電子政務的不斷發展以及《中華人民共和國網絡安全法》的實行,對數據安全的要求也將進一步提升,在電子政務領域使用HTTPS協議對傳輸過程保護已經勢在必行。
[1]劉偉.我國電子政務績效評估方案的綜合研究[J].中國行政管理,2013.
[2]王益民.全球電子政務發展現狀、特點趨勢及對中國的啟示——《2016年聯合國電子政務調查報告》解讀[J].電子政務,2016.
[3]張振,王惠芳.電子政務安全體系結構研究與設計[J].網絡安全技術與應用,2010.
[4]葉錫君,吳國新,許勇,束坤.超文本傳輸協議的認證技術研究與實現[J].計算機集成制造系統-CIMS,2001.
[5]丁斌.網絡協議分析與網絡異常流量識別技術的研究[D].長春工業大學,2015.
[6] Nginx中文文檔.http://www.nginx.cn/.