999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

防SQL注入的web系統交互設計

2014-09-23 01:45:26毋世曉
企業導報 2014年9期
關鍵詞:頁面數據庫用戶

毋世曉

摘要:用戶使用表單頁面進行交互時,系統對關鍵的SQL操作語句進行預處理,可以防止SQL注入。經過預處理的數據查詢語言比普通意義上的SQL語句更加安全可靠。本文以留言板系統為例,對該系統的功能里涉及登陸、注冊、添加留言的頁面代碼SQL語句部分進行了預處理,借以保證用戶信息安全。

關鍵詞:QL預處理;留言板;SQL注入引言:根據Imperva公司的“監測黑客論壇:ADC每月網絡攻擊分析(2012年10月)”報告顯示,在黑客論壇,最常被討論的是拒絕服務(DoS)/分布式拒絕服務(DDoS)攻擊和SQL注入。根據安全云托管公司FireHost公司9月份發布的報告顯示,在2012年的前兩個季度,SQL注入攻擊上升了69%。SQL注入可以通過判斷Web環境是否可以進入,進而輸入特殊的語句判斷數據庫的類型、判斷數據庫的用戶名和密碼,最終進入后臺管理獲取用戶信息,這對Web安全威脅很大。

本文通過一個詳細的案列來介紹如何在一個系統中利用SQL 預處理語句防范SQL注入。SQL預處理語句實現的過程就是內部轉義的過程,它將一些需要轉義的字符進行轉義,對SQL語句進行預處理, 將SQL語句進行內部編譯并優化,所需要的查詢只需要被解析一次,使用的資源更少,執行速度更快,當然也更安全。

系統包括5個模塊:登陸、注冊、添加留言、查看留言,刪除留言。前四個模塊是針對用戶的,后一個模塊是針對管理人員的。

文章的第一部分是引言,第二部分介紹論文的技術背景,第三部分介紹系統的詳細設計,第四部分是實現結果,第五部分是總結,第六部分是參考文獻。

一、技術背景

本系統使用JSP+JavaBean+Access的方式來開發留言板系統[1]。所需要的軟件涉及:Apache Tomcat 6.0,jdk1.7.0_17,Microsoft Access 2000, Macromedia Dreamweaver 8, Jcreator LE

5.00,在所有的軟件安裝成功以后需要配置2個環境變量:在我的電腦-->屬性-->高級-->環境變量里,系統變量里選中Path變量雙擊打開,在變量名的最后一個分號后面加入:C:Program FilesJavajdk1.7.0_17in;(前提是JDK是默認安裝的),并在系統變量里新建變量名為ClassPath變量值為C:

Program FilesJavajdk1.7.0_17lib的系統變量,配置Java所需的運行環境,是因為JSP頁面里會涉及部分Java代碼[2]。

在這些軟件中,JDK保證JSP中J(Java)的運行環境,Tom

cat充當JSP中S(Server)服務器的功能,Dreamweaver提供

JSP中P(Page)的編輯環境。 可以在Jcreator中查看Java文件,并將Java文件編譯成.class文件,.class文件都被部署在C:Program FilesApache Software FoundationTomcat 6.0webappsROOTWEB-INFclassesmypackage文件夾下,在JSP文件中通過import導入這些class文件。

系統共使用10個文件,其中包括2個class文件(Access

ConnBean.class, MyUtil.class),6個jsp文件(Login.jsp, liuyan.

jsp, writely.jsp, viewly.jsp, writelyd.jsp, delete.jsp),2個html頁面(1.html, 2.html)。

AccessConnBean.class 文件完成連接數據庫的功能,MyU

til.class文件完成GB2312碼到Unicode碼的轉換,因表單輸入頁面是GB2312碼,而JSP頁面的字符串是以Unicode顯示的。

因為涉及將注冊信息及留言信息寫入數據庫,系統設計了2個Access數據庫——liuyan.mdb和user_info數據庫。JSP訪問Access數據庫的方式是JDBC-ODBC[3]。數據庫的詳細設計將在第三章介紹。

二、留言板系統

(一)系統功能。本系統共包括2個子系統(用戶登陸和留言系統),共完成5個功能:(1)登陸功能。登陸的用戶必須是數據庫里的用戶,如果不是已經注冊的用戶,則需要點擊注冊。成功則進入注冊界面,失敗留在當前頁面。(2)注冊功能。單輸入自己的用戶名、密碼、郵箱等信息,并通過writelyd.jsp頁面寫入數據庫。(3)查看留言。已經存在的用戶登錄進入系統以后可以查看留言板信息。(4) 添加留言。用戶輸入正確的用戶名和密碼以后可以進入liuyan.jsp頁面添加留言,留言內容會通過write

ly.jsp頁面添加到數據庫。(5)刪除留言。該模塊需要用戶登錄,且必須知道管理員的用戶名和密碼,在2.html輸入要刪除的留言者姓名,通過delete.jsp頁面進行處理,即可刪除該留言者的留言。

(二)數據庫設計。留言版系統采用Access數據庫,因為該數據庫設計比較簡單,只存放用戶注冊信息及留言信息,涉及了數據庫的插入,查詢,刪除等操作。

該系統包含兩個數據庫: user_info數據庫和liuyan數據庫,這兩個數據庫各自包含同名的一個表,user_info表包含us

er_id,password, email, name, sex 5個字段。Liuyan表包含xm,

email, ly, url 4個字段。

(三)預處理實現 。留言板系統涉及用戶信息的有以下3個頁面:Login.jsp, writely.jsp, writelyd.jsp。他們分別完成的功能是使用用戶名和密碼登陸、將注冊信息寫入數據庫、將留言信息寫入數據庫。這3個頁面都是處理Web表單提交的信息,涉及信息的內容包括用戶的用戶名,密碼,郵箱,留言內容,姓名,地址等。我們使用預處理語句處理數據庫的查詢、插入等操作, 在防止SQL注入的同時還可以提高系統性能。

以Login.jsp登錄頁面為例,我們給出關鍵代碼來給大家作對比,先給出普通版本的:

AccessBean.OpenConn();

String sql = “select user_id,password from user_info where

user_id=‘”+userId+” and password=‘“+password+“”;

ResultSet rs = AccessBean.executeQuery(sql);

其中AccessBean是AccessConnBean的一個別名,我們在

usebean中簡化了這個類名,這個類用來連接Access數據庫,根據數據查詢返回結果集ResultSet。

其次我們給出PrepareStatement版本的:

Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);con=

DriverManager.getConnection(“jdbc:odbc:user_info“,” “,””);

String sql = select user_id,password from user_info where

user_id=‘“+userId+” and password=“+password+”;

PreparedStatement pstmt=con.prepareStatement(sql);

ResultSet rs=pstmt.executeQuery();

在這個版本中,第一句是連接JDBC-ODBC驅動,第二句連接user_info用戶注冊數據庫,第三句是SQL查詢語句,第四句將SQL語言進行預編譯,并通過預編譯語句對象執行查詢,將數據結果返回給ResultSet。

使用PreparedStatement預處理語句可以將SQL語言進行預編譯,預處理可以自動檢查已經綁定好的變量,同時強制轉換這些變量使之與底層數據庫驅動相匹配,它會忽略掉一些惡意的字符串,在防范SQL注入的同時因為其預編譯的功能可以節約因多次重復輸入相同條件的SQL語句而消耗的資源。

總結:該系統經測試運行正常,可以實現登錄、注冊、添加留言、查看留言、刪除留言等功能。經過Web表單預提交的數據經過SQL預處理可以防止SQL注入。

參考文獻:

[1] 劉玉軒. 基于JSP 和MySQL 的留言板系統設計與實現[J].計算機與信息技術。

[2] 張興科. JSP動態網站設計項目教程. 北京: 中國人民大學出版社,2010

[3] 張志峰等。Java Web技術整合應用與項目實戰。北京:清華大學出版社,2010.

[4] 王燕,李明,王惠琴.??Web數據庫的連接技術及安全控制[J].

猜你喜歡
頁面數據庫用戶
大狗熊在睡覺
刷新生活的頁面
保健醫苑(2022年1期)2022-08-30 08:39:14
數據庫
財經(2017年2期)2017-03-10 14:35:35
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數據庫
財經(2016年15期)2016-06-03 07:38:02
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 91娇喘视频| 久久77777| 免费va国产在线观看| 亚洲国产天堂在线观看| 99国产精品国产高清一区二区| 免费一级成人毛片| 精品国产美女福到在线不卡f| 久久久久久久久亚洲精品| aaa国产一级毛片| 色老头综合网| 91精品啪在线观看国产60岁 | 女人一级毛片| 欧美日韩中文国产va另类| 国产视频 第一页| 欧美成人aⅴ| a网站在线观看| 毛片免费在线视频| 日韩二区三区| 国产无遮挡猛进猛出免费软件| 亚洲欧美自拍一区| 美女无遮挡免费网站| 成年人国产视频| 国产97色在线| 亚洲黄网在线| 欧美性爱精品一区二区三区| 欧美狠狠干| 久久人体视频| 波多野结衣无码视频在线观看| 亚洲欧美另类日本| 丰满少妇αⅴ无码区| 久久特级毛片| 97在线免费| 免费无码AV片在线观看中文| 国产丝袜无码精品| 2019年国产精品自拍不卡| 欧美视频在线不卡| 国产极品美女在线播放| 欧美午夜理伦三级在线观看| 中文字幕一区二区人妻电影| 亚洲精品麻豆| 2022国产无码在线| 国产成人综合在线观看| 亚洲成人黄色网址| 四虎在线观看视频高清无码| 国产欧美精品专区一区二区| 亚洲伊人天堂| 伊人AV天堂| 亚洲成网777777国产精品| 91麻豆精品视频| 欧美成人日韩| 真人免费一级毛片一区二区 | 亚洲国产第一区二区香蕉| 亚洲天堂.com| 国产内射在线观看| 欧美三级自拍| 伊人色天堂| 亚洲欧洲日韩久久狠狠爱| 国模极品一区二区三区| 呦系列视频一区二区三区| 一本色道久久88综合日韩精品| 亚洲视屏在线观看| 五月婷婷丁香综合| 97青草最新免费精品视频| 欧美黄网在线| 99re在线免费视频| 亚洲最大综合网| 亚洲一区二区成人| 国产精品无码久久久久久| 日韩不卡高清视频| 无码久看视频| 青青操视频免费观看| 国产h视频在线观看视频| 综合人妻久久一区二区精品| 高清免费毛片| 国产18页| 国产精品福利一区二区久久| 日本高清免费一本在线观看| 亚洲欧洲日韩久久狠狠爱| 亚洲六月丁香六月婷婷蜜芽| 色综合狠狠操| 久热精品免费| 日韩欧美在线观看|