亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        防SQL注入的web系統(tǒng)交互設(shè)計

        2014-09-23 01:45:26毋世曉
        企業(yè)導(dǎo)報 2014年9期
        關(guān)鍵詞:用戶名語句頁面

        毋世曉

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

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

        本文通過一個詳細(xì)的案列來介紹如何在一個系統(tǒng)中利用SQL 預(yù)處理語句防范SQL注入。SQL預(yù)處理語句實現(xiàn)的過程就是內(nèi)部轉(zhuǎn)義的過程,它將一些需要轉(zhuǎn)義的字符進(jìn)行轉(zhuǎn)義,對SQL語句進(jìn)行預(yù)處理, 將SQL語句進(jìn)行內(nèi)部編譯并優(yōu)化,所需要的查詢只需要被解析一次,使用的資源更少,執(zhí)行速度更快,當(dāng)然也更安全。

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

        文章的第一部分是引言,第二部分介紹論文的技術(shù)背景,第三部分介紹系統(tǒng)的詳細(xì)設(shè)計,第四部分是實現(xiàn)結(jié)果,第五部分是總結(jié),第六部分是參考文獻(xiàn)。

        一、技術(shù)背景

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

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

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

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

        cat充當(dāng)JSP中S(Server)服務(wù)器的功能,Dreamweaver提供

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

        系統(tǒng)共使用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 文件完成連接數(shù)據(jù)庫的功能,MyU

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

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

        二、留言板系統(tǒng)

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

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

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

        該系統(tǒng)包含兩個數(shù)據(jù)庫: user_info數(shù)據(jù)庫和liuyan數(shù)據(jù)庫,這兩個數(shù)據(jù)庫各自包含同名的一個表,user_info表包含us

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

        email, ly, url 4個字段。

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

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

        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數(shù)據(jù)庫,根據(jù)數(shù)據(jù)查詢返回結(jié)果集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驅(qū)動,第二句連接user_info用戶注冊數(shù)據(jù)庫,第三句是SQL查詢語句,第四句將SQL語言進(jìn)行預(yù)編譯,并通過預(yù)編譯語句對象執(zhí)行查詢,將數(shù)據(jù)結(jié)果返回給ResultSet。

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

        總結(jié):該系統(tǒng)經(jīng)測試運行正常,可以實現(xiàn)登錄、注冊、添加留言、查看留言、刪除留言等功能。經(jīng)過Web表單預(yù)提交的數(shù)據(jù)經(jīng)過SQL預(yù)處理可以防止SQL注入。

        參考文獻(xiàn):

        [1] 劉玉軒. 基于JSP 和MySQL 的留言板系統(tǒng)設(shè)計與實現(xiàn)[J].計算機與信息技術(shù)。

        [2] 張興科. JSP動態(tài)網(wǎng)站設(shè)計項目教程. 北京: 中國人民大學(xué)出版社,2010

        [3] 張志峰等。Java Web技術(shù)整合應(yīng)用與項目實戰(zhàn)。北京:清華大學(xué)出版社,2010.

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

        猜你喜歡
        用戶名語句頁面
        大狗熊在睡覺
        《護(hù)士進(jìn)修雜志》投稿程序
        刷新生活的頁面
        重點:語句銜接
        精彩語句
        機智的快遞員
        故事會(2017年17期)2017-09-04 17:36:42
        如何搞定語句銜接題
        語文知識(2014年4期)2014-02-28 21:59:52
        同一Word文檔 縱橫頁面并存
        淺析ASP.NET頁面導(dǎo)航技術(shù)
        作文語句實錄
        国产精品第一二三区久久蜜芽| а天堂中文地址在线| 精品久久人妻av中文字幕| 亚洲日韩国产精品第一页一区| 欧美成人高清手机在线视频| 极品少妇一区二区三区| 欧美性xxxxx极品老少| 中国a级毛片免费观看| 久久婷婷色香五月综合激情| 一区二区三区日韩毛片| 人与人性恔配视频免费| 综合无码一区二区三区| 国产91一区二这在线播放| 国产av一区二区网站| 领导边摸边吃奶边做爽在线观看 | 高清国产亚洲va精品| 成人大片在线观看视频| 日韩人妻ol丝袜av一二区| vr成人片在线播放网站| 精品国产亚洲av麻豆尤物| 日本系列有码字幕中文字幕| 国产精品久久久久9999赢消| 亚洲一区综合精品狠狠爱| 亚洲av性色精品国产| 色综合天天综合网国产成人网| 中国凸偷窥xxxx自由视频| 精品久久久久久午夜| 国产一区二区三免费视频| 亚洲精品无码久久久影院相关影片 | 日韩一二三四精品免费| 草青青在线视频免费观看| 特黄熟妇丰满人妻无码| 亚洲网站地址一地址二| 亚洲av色香蕉一区二区三区蜜桃 | 夜色阁亚洲一区二区三区| 亚洲精品国产主播一区二区| 最新中文字幕一区二区| 麻麻张开腿让我爽了一夜| 国产午夜亚洲精品一级在线| 91九色熟女潮喷露脸合集| 亚洲裸男gv网站|