亚洲AV无码乱码在线观看不卡|最新大伊香蕉精品视频在线|亚洲不卡av一区二区|国产美女无遮挡免费

登錄論壇 | 注冊(cè)會(huì)員 設(shè)為首頁 | 收藏本站
當(dāng)前位置 : 首頁>軟件學(xué)院>數(shù)據(jù)庫>SQL>正文
 
GreenSQL助力防止SQL注入攻擊

http://www.yibo1263.com 2009/3/21 9:04:58  來源:東北IT網(wǎng)  編輯:葉子
 
  SQL注入攻擊的危害早已為人所熟知,這種攻擊準(zhǔn)許攻擊者在你的數(shù)據(jù)庫上執(zhí)行任意的SQL命令。要對(duì)付這種攻擊,我們對(duì)于Web用戶 所提供的任何數(shù)據(jù),不管是通過HTTP方式,還是通過CGI參數(shù)方式提供的,都要經(jīng)過驗(yàn)證,以確保其不包含非法信息。

  這是解決問題的根本之道。我們需要一種工具。許多安全機(jī)構(gòu)和人員提出了不少對(duì)付這種攻擊的方法。今天我們看一個(gè)不錯(cuò)的工具GreenSQL,可以說它是一個(gè)MySQL數(shù)據(jù)庫防火墻,可以過濾SQL注入攻擊。

  它位于網(wǎng)站和MySQL數(shù)據(jù)庫之間,可以決定哪些SQL語句可以執(zhí)行,哪些不應(yīng)當(dāng)執(zhí)行。再加上其Web界面,使得 用戶可以通過瀏覽器來管理GreenSQL。GreenSQL的設(shè)計(jì)目的就是用作MySQL數(shù)據(jù)庫的一個(gè)代理服務(wù)器。它不是將用戶的請(qǐng)求直接連接到MySQL數(shù)據(jù)庫,而是連接到GreenSQL。 GreenSQL將合法的SQL提交給MySQL數(shù)據(jù)庫并返回結(jié)果。

  如果GreenSQL檢測(cè)到一條不屬于白名單并包含惡意SQL的語句,它將阻止此SQL 并返回一個(gè)空結(jié)果,不與MySQL數(shù)據(jù)庫發(fā)生聯(lián)系。筆者完成此文時(shí),F(xiàn)edora、openSUSE、 Ubuntu 等Linux發(fā)行版本并沒有包含GreenSQL。

  在本文中,筆者將在一臺(tái)64位的Fedora 9計(jì) 算機(jī)上從源代碼安裝greensql-fw 0.8.4。安裝過程并沒有使用自動(dòng)化的工具,所以必須手動(dòng)設(shè)置一些東西,如配置文件、系統(tǒng)用戶、MySQL配置、日志文件、/etc/init.d等。 這些過程在install.txt文件中有明確說明,所以并不太費(fèi)力。當(dāng)然,通過執(zhí)行腳本字典中的幾個(gè)腳本外殼,你也可以完成安裝的不 少內(nèi)容。為編譯應(yīng)用程序,可以簡(jiǎn)單地執(zhí)行“make”,如下所示:

$ tar xzf /.../greensql-fw-0.8.4.tar.gz
$ cd greensql-fw-0.8.4/
$ make
...
connection.hpp:29: error: field 'proxy_event' has incomplete type
connection.hpp:30: error: field 'client_event' has incomplete type
可以看出,在編譯開始后,我們收到了幾個(gè)錯(cuò)誤,這是由于在Fedora 9上安裝時(shí),筆者并沒有安裝libevent-devel。在安裝好libevent-devel后,又發(fā)現(xiàn)需要修改/usr/include/event.h,為編譯事件代碼,需要將sys/types.h包括進(jìn)去。
vi /usr/include/event.h ... #include  #include  #include  #include 
在使用“make -k”命令時(shí),有幾個(gè)文件又出現(xiàn)了差錯(cuò),這些文件調(diào)用了字符串函數(shù),如“strcasecmp”,這是由于沒有包括 string.h頭文件所致。對(duì)讀者來說,根據(jù)所使用的gcc的版本的不同,在編譯GreenSQL時(shí),可能會(huì)出現(xiàn)類似或不類似于下面的一些問 題:
$ cd src $ vi mysql/mysql_con.cpp ... 
// License: GPL v2 (http://www.gnu.org/licenses/gpl.html) // 
 #include 

 #include "mysql_con.hpp" ... 
$ vi config.hpp ... #ifndef GREEN_SQL_CONFIG_HPP #define 

GREEN_SQL_CONFIG_HPP #include  ... 
$ vi ../src/parser/expression.hpp ... #ifndef _SQL_EXPRESSION_HPP_ 

#define _SQL_EXPRESSION_HPP_ #include  ...
如果你在一個(gè)64位的發(fā)行版本上編譯GreenSQL,可能還需要稍稍修改Makefile,這樣編譯生成程序才能檢查lib64而不是lib目錄,如 下所示:
$ vi src/Makefile ... 
LIBS:=-L/usr/local/lib -L/usr/local/lib/mysql -L/usr/lib64/mysql -lmysqlclient -levent -lpcre 

greensql-fw: $(OBJS) ... $ make
編譯完成,下面顯示的完成安裝的命令:
greensql-fw-0.8.4]# cd ./scripts/ 
# ./setup_user.sh done... 
# ./greensql-create-db.sh -----------------------------

---------------- The following settings will be used: MySQL admin user: [root] 
MySQL admin password: [] MySQL server 

address: [127.0.0.1] GreenSQL configuration DB name: [greendb] 
DB user to create: [green] 
Password to set: [pwd] Do 

you want to change anything? [y/N] y
MySQL admin user [root]: MySQL admin password []: XXxxXXxxXXxx-FIXME MySQL 

server address (you can use ip:port string) [127.0.0.1]: 
GreenSQL config db name [greendb]: GreenSQL DB user name 

[green]: greendb GreenSQL DB user password [pwd]: greendbpass
 --------------------------------------------- The 

following settings will be used: Do you want to change anything? [y/N] 
Creating MySQL database... 
Adding MySQL user... 
Creating MySQL tables... 
GreenSQL configuration file is not writable!!! Check that [database] section 

contains the following settings in /etc/greensql/greensql.conf [database] 
dbhost=127.0.0.1 dbname=greendb 

dbuser=greendb dbpass=greendbpass # dbport=3306 ... 
# ./setup_conf.sh done... 
# ./setup_log.sh done... # 

./setup_binary.sh done... 
# vi /etc/greensql/greensql.conf ... [database] dbhost=127.0.0.1 dbname=greendb 

dbuser=greendb dbpass=greendbpass ... 
# chkconfig --add greensql service greensql does not support chkconfig # 

/etc/init.d/greensql start
軟件包的install.txt文件描述了手動(dòng)安裝方法,與腳本所使用的命令相同。使用腳本可能更好一些,因?yàn)檫@樣可以提高安裝速度, 而安裝程序基本相同。安裝指南推薦在/etc/greensql目錄之前設(shè)置MySQL數(shù)據(jù)庫,不過如果你這樣做的話,有可能無法找到配置文件 ,所以你必須手動(dòng)更改/etc/greensql/greensql.conf文件。你對(duì)greensql.conf作出的唯一主要更改是獲取MySQL數(shù)據(jù)庫參數(shù)。為測(cè)試需要,筆者創(chuàng)建了一個(gè)稱為“test”的數(shù)據(jù)庫,并允許用戶“ben”自由訪問,命令如下:

本新聞共3頁,當(dāng)前在第1頁  1  2  3  

收藏】【打印】【進(jìn)入論壇
  相關(guān)文章:

·MySQL CEO加入基準(zhǔn)基金公司
·MySQL創(chuàng)始人聯(lián)合14000人反對(duì)甲骨文收購Sun
·MySQL創(chuàng)始人呼吁用戶反對(duì)甲骨文收購Sun
·94%瀏覽器攻擊發(fā)生在漏洞公布的24小時(shí)之內(nèi)
·五大著名免費(fèi)SQL注入漏洞掃描工具
·如何防御網(wǎng)站SQL注入
·SQL攻擊:防御和檢查SQL注入的手段
·解析SQL注入 十大方式保護(hù)數(shù)據(jù)安全
·用SQL分離器實(shí)現(xiàn)sa弱口令強(qiáng)行入侵
·檢測(cè)SQL Server是否有特洛伊木馬 
·使用SQL更改SQL 2005 sa用戶密碼的方法

 
 
 
最新文章

搶先蘋果,消息稱英特爾芯片采用臺(tái)積電
三星揭曉業(yè)內(nèi)首款單條 512GB DDR5 內(nèi)存
vivo 高端新機(jī)爆料:120Hz 曲面屏 + 天
vivo Y21 在印度正式上市:Helio P35 芯
微星推出 GeForce RTX 3080 Sea Hawk X
消息稱三星 Galaxy Tab S8 系列平板將放
機(jī)械革命推出 F6 輕薄本:16 英寸全面屏
英特爾 12 代 Alder Lake CPU 600 系列
雷軍:向小米手機(jī) 1 首批用戶每人贈(zèng)送價(jià)
小米李明談?dòng)脩舯惶叱?nbsp;MIUI 測(cè)試版:大

推薦文章
1
2
3
4
5
6
7
8
9
10
叛逆嫩模性感寫真
宮如敏不雅照瘋傳 看張馨予韓一菲獸獸誰
不懼孔子搶位 阿凡達(dá)游戲影音配置推薦
2015第十七屆“東北安博會(huì)”火爆招商
第十六屆東北國際公共安全防范產(chǎn)品博覽
2016年第五屆中國國際商業(yè)信息化博覽會(huì)
2016年第五屆中國國際POS機(jī)及相關(guān)設(shè)備展
互聯(lián)網(wǎng)電視熟了嗎 2013最火電視深解析
桑達(dá)獲邀出席2015中國(廣州)國際POS機(jī)
寶獲利報(bào)名參加“2015年度中國POS機(jī)行業(yè)
八卦圖解 More>>
叛逆嫩模性感寫真 宮如敏不雅照瘋傳 看張馨予韓一菲
周偉童魔鬼身材日本性感寫真圖  聯(lián)想V360筆記本模特寫真