當前位置:首頁 » 編程語言 » sql破解
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql破解

發布時間: 2022-02-17 07:43:10

㈠ 怎麼用sql注入破解密碼

這篇文章對你應該有用: http://www.xue5.com/ite/200707/150732_4.html 入侵破解:SQL Server應用程序中的高級SQL注入 資料來源:學網( www.xue5.com ),原文地址: http://www.xue5.com/ite/200707/150732_4.htmlSQL SERVER自動地將整型轉化為varchar型的值。 [Second-Order SQL Injection] 即使應用程序總是過濾單引號,攻擊者依然能夠注入SQL同樣通過應用程序使資料庫中的數據重復使用。 例如,攻擊者可能利用下面的信息在應用程序中注冊: Username:admin'— Password:password 應用程序正確過濾了單引號,返回了一個類似這樣的insert語句: insert into users values(123,'admin''—','password',0xffff) 我們假設應用程序允許用戶修改自己的密碼。這個ASP腳本程序首先保證用戶設置新密碼前擁有正確的舊密碼。代碼如下: username = escape( Request.form("username") ); oldpassword = escape( Request.form("oldpassword") ); newpassword = escape( Request.form("newpassword") ); var rso = Server.CreateObject("ADODB.Recordset"); var sql = "select * from users where username = '" + username + "' and password = '" + oldpassword + "'"; rso.open( sql, cn ); if (rso.EOF) { … 設置新密碼的代碼如下: sql = "update users set password = '" + newpassword + "' where username = '" + rso("username") + "'" rso("username")為登陸查詢中返回的用戶名 當username為admin'—時,查詢語句為: update users set password = 'password' where username='admin'—' 這樣攻擊者可以通過注冊一個admin'—的用戶來根據自己的想法來設置admin的密碼。 這是一個非常嚴重的問題,目前在大型的應用程序中試圖去過濾數據。最好的解決方法是拒絕非法輸入,這勝於簡單地努力去修改它。這有時會導致一個問題,非法的字元在那裡是必要的,例如在用戶名中包含'符號,例如 O'Brien 從一個安全的觀點來看,最好的解答是但引號不允許存在是一個簡單的事實。如果這是無法接受的話,他們仍然要被過濾;在這種情況下,保證所有進入SQL查詢的數據都是正確的是最好的方法。 如果攻擊者不使用任何應用程序莫名其妙地往系統中插入數據,這種方式的攻擊也是可能的。應用程序可能有email介面,或者可能在資料庫中可以存儲錯誤日誌,這樣攻擊者可以努力控制它。驗證所有數據,包括資料庫中已經存在的數據始終是個好的方法。確認函數將被簡單地調用,例如: if(not isValid("email",request.querystring("email"))) then response.end 或者類似的方法。 [長度限制] 為了給攻擊者更多的困難,有時輸入數據的長度是被限制的。當這個阻礙了攻擊時,一個小的SQL可以造成很嚴重的危害。例如: Username:';shutdown— 這樣只用12個輸入字元就將停止SQL SERVER實例。文章整理:學網 http://www.xue5.com (本站) [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] 另一個例子是: drop table 如果限定長度是在過濾字元串後應用將會引發另一個問題。假設用戶名被限定16個字元,密碼也被限定16個字元,那麼下面的用戶名和密碼結合將會執行上面提到的shutdown命令: Username:aaaaaaaaaaaaaaa' Password:'; shutdown— 原因是應用程序嘗試去過濾用戶名最後的單引號,但是字元串被切斷成16個字元,刪除了過濾後的一個單引號。這樣的結果就是如果密碼欄位以單引號開始,它可以包含一些SQL語句。既然這樣查詢看上去是: select * from users where username='aaaaaaaaaaaaaaa'' and password=''';shutdown— 實際上,查詢中的用戶名已經變為: aaaaaaaaaaaaaaa' and password=' 因此最後的SQL語句會被執行。 [審計] SQL SERVER包含了豐富的允許記錄資料庫中的各種事件的審計介面,它包含在sp_traceXXX類的函數中。特別有意思的是能夠記錄所有SQL語句,然後在伺服器上執行的T-SQL的事件。如果這種審計是被激活的,我們討論的所有注入的SQL查詢都將被記錄在資料庫中,一個熟練的資料庫管理員將能夠知道發生了什麼事。不幸地,如果攻擊者追加以下字元串: Sp_password 到一個Transact-SQL語句中,這個審計機制記錄日誌如下: --'sp_password' was found in the text of this event. -- The text has been replaced with this comment for security reasons. 這種行為發生在所有的T-SQL日記記錄中,即使'sp_password'發生在一個注釋中。這個過程打算通過sp_password隱藏用戶的密碼,但這對於一個攻擊者來說是非常有用的方法。 因此,為了隱藏所有注入,攻擊者需要簡單地在'—'注釋字元後追加sp_password,例如: Username:admin'—sp_password 事實上一些被執行的SQL將被記錄,但是查詢本身將順利地從日誌中消失。 [防範] 這部分討論針對記述的攻擊的一些防範。我們將討論輸入確認和提供一些簡單的代碼,然後我們將從事SQL SERVER鎖定。 [輸入驗證] 輸入驗證是一個復雜的題目。比較有代表性的是,自從過於嚴密地確認傾向於引起部分應用程序的暫停,輸入確認問題很難被解決,在項目開發中投入很少的注意力在輸入確認上。輸入確認不是傾向於將它加入到應用程序的功能當中,因此它一般會被忽視。 下面是一個含有簡單代碼的討論輸入確認的大綱。這個簡單的代碼不能直接用於應用程序中,但是它十分清晰地闡明了不同的策略。 不同的數據確認方法可以按以下分類: 1) 努力修改數據使它成為正確的 2) 拒絕被認為是錯誤的輸入 3) 只接收被認為是正確的輸入 第一種情況有一些概念上的問題;首先,開發人員沒必要知道那些是錯誤數據,因為新的錯誤數據的形式始終被發現。其次,修改數據會引起上面描述過的數據的長度問題。最後,二次使用的問題包括系統中已經存在數據的重新使用。 第二種情況也存在第一種情況中的問題;已知的錯誤輸入隨著攻擊技術的發展變化。 第三種情況可能是三種中最好的,但是很難實現。 從安全形度看合並第二種方法和第三種方法可能是最好的方法——只允許正確的輸入,然後搜索輸入中已知的錯誤數據。 帶有連接符號的姓名的問題對於體現合並兩種方法的必要性是一個好的例子: Quentin Bassington-Bassington 我們必須在正確輸入中允許連接符號,但是我們也意識到字元序列'—'對SQL SERVER很重要。 當合並修改數據和字元序列確認時,會出現另一個問題。例如,如果我們應用一個錯誤過濾在除去單引號之後去探測'—','select'和'union',攻擊者可以輸入: uni'on sel'ect @@version-'- 既然單引號被除去,攻擊者可以簡單地散布單引號在自己的錯誤的字元串中躲避被發現。 這有一些確認代碼的例子: 方法一——過濾單引號 function escape(input) input=replace(input,"'","''") escape=input end function 方法二——拒絕已知的錯誤輸入 function validate_string(input) known_bad=array("select","insert","update","delete","drop","—","'") validate_string=true for i=lbound(known_bad) to ubound(known_bad) if(instr(1,input,known_bad(i),文章整理:學網 http://www.xue5.com (本站) [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] vbtextcompare)<>0) then validate_string=false exit function end if next end function 方法三——只允許正確的輸入 function validatepassword(input) good_password_chars=」 」 validatepassword=true for i=1 to len(input) c=mid(input,I,1) if(InStr(good_password_chars,c)=0) then validatepassword=false exit function end if next end function [SQL SERVER鎖定] 在這指出的重要一點是鎖定SQL SERVER是必要的;外面的是不安全的。這是一個但創建SQL SERVER時需要做的事情的簡短的列表: 1.確定連接伺服器的方法 a.確定你所使用的網路庫是可用的,那麼使用"Network Utility" 2.確定哪些帳戶是存在的 a.為應用程序的使用創建一個低許可權的帳戶 b.刪除不必要的帳戶 c.確定所有帳戶有強壯的密碼;執行密碼審計 3.確定哪些對象存在 a.許多擴展存儲過程能被安全地移除。如果這樣做了,應該移除包含在擴展存儲過程代碼中的'.dll'文件 b.移除所有示例資料庫——例如'northwind'和'pubs'資料庫 4.確定哪寫帳戶能過使用哪些對象 a.應用程序進入資料庫所使用的帳戶應該有保證能夠使用它需要的對象的最小許可權 5.確定伺服器的補丁 a.針對SQL SERVER有一些緩沖區溢出和格式化字元串攻擊,也有一些其他的安全補丁發布。應該存在很多。 6.確定什麼應該被日誌記錄,什麼應該在日誌中結束。 [參考文獻] [1] Web Application Disassembly with ODBC Error Messages, David Litchfield http://www.nextgenss.com/papers/webappdis.doc [2] SQL Server Security Checklist http://www.sqlsecurity.com/checklist.asp [3] SQL Server 2000 Extended Stored Procere Vulnerability http://www.atstake.com/research/advisories/2000/a120100-2.txt [4] Microsoft SQL Server Extended Stored Procere Vulnerability http://www.atstake.com/research/advisories/2000/a120100-1.txt [5] Multiple Buffer Format String Vulnerabilities In SQL Server http://www.microsoft.com/technet/security/bulletin/MS01-060.asp http://www.atstake.com 資料來源:學網( www.xue5.com ),原文地址: http://www.xue5.com/ite/200707/150732_4.html

㈡ SQL加密破解

有常識的人做存儲密碼,只保存不可復原的散列值,而不保存對稱的密文,
就是為了防止技術人員利用密碼原文。
這是保存的base64形式的128bit散列值。符合MD5或HMAC-MD5的特徵。
本身沒有保存原文信息。
別想復原了。去廟里許願可能性更大一點。

㈢ sql server 2008怎麼破解

1、直至當前為止,所有的MS SQL Server的激活方式都是輸入正確的序列號,即可使用,不必對相關的文件進行非正常的改動(「破解」),也不必在線激活。 2、直至當前為止,所有的MS SQL Server在輸入正確序列號後都不必在線激活、驗證,也就是說,只要知道一個序列號,就可以隨意安裝(安裝環境滿足情況下)。 3、微軟官方的某些版本里,本身就「集成」有序列號,比如MSDN版的MS Sql Server。 4、請注意的是,以上的說明並不等於說MS SQL Server是免費的,當用於商業目的,或用於生產時,應當通過正當途徑購買微軟的授權(不便宜哦,基本上超出中國普通人的預想價)。 5、未經授權使用MS SQL Server用於商業目的,或用於生產,如果被微軟發現並追究,可能面對高額的賠償(會通過法律告你)。(不過,悄悄說,一般人,人家微軟還真看不上。) 6、最後,MS SQL Server 2008的序列號請自個網路搜索就能找到了。

㈣ sql server 連接密碼破解方法

具體操作如下:
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_GetPassword]') and OBJECTPROPERTY(id, N'IsProcere') = 1)
drop procere [dbo].[p_GetPassword]
GO
/*--窮舉法破解 SQL Server 用戶密碼
可以破解中文,特殊字元,字元+尾隨空格的密碼
為了方便顯示特殊字元的密碼,在顯示結果中,顯示了組成密碼的ASCII,理論上可以破解任意位數的密碼,條件是電腦配置足夠,時間足夠.
/*--調用示例
exec p_GetPassword
--*/
create proc p_GetPassword
@username sysname=null, --用戶名,如果不指定,則列出所有用戶
@pwdlen int=2 --要破解的密碼的位數,默認是2位及以下的
as
set @pwdlen=case when isnull(@pwdlen,0)<1 then 1 else @pwdlen-1 end
select top 255 id=identity(int,0,1) into #t from syscolumns
alter table #t add constraint pk_#t primary key(id)
select name,password
,type=case when xstatus&2048=2048 then 1 else 0 end
,jm=case when password is null then 1 else 0 end
,pwdstr=cast('' as sysname)
,pwd=cast('' as varchar(8000))
into #pwd
from master.dbo.sysxlogins a
where srvid is null
and name=isnull(@username,name)
declare @s1 varchar(8000),@s2 varchar(8000),@s3 varchar(8000)
declare @l int
select @l=0
,@s1='char(aa.id)'
,@s2='cast(aa.id as varchar)'
,@s3=',#t aa'
exec('
update pwd set jm=1,pwdstr='+@s1+'
,pwd='+@s2+'
from #pwd pwd'+@s3+'
where pwd.jm=0
and pwdcompare('+@s1+',pwd.password,pwd.type)=1
')
while exists(select 1 from #pwd where jm=0 and @l<@pwdlen)
begin
select @l=@l+1
,@s1=@s1+'+char('+char(@l/26+97)+char(@l%26+97)+'.id)'
,@s2=@s2+'+'',''+cast('+char(@l/26+97)+char(@l%26+97)+'.id as varchar)'
,@s3=@s3+',#t '+char(@l/26+97)+char(@l%26+97)
exec('
update pwd set jm=1,pwdstr='+@s1+'
,pwd='+@s2+'
from #pwd pwd'+@s3+'
where pwd.jm=0
and pwdcompare('+@s1+',pwd.password,pwd.type)=1
')
end
select 用戶名=name,密碼=pwdstr,密碼ASCII=pwd
from #pwd
go

㈤ sql server 2014 怎麼破解

您好:
為什麼要破解呢。
去搜一個企業版的序列號就可以啦。
通常都是在安裝前找到序列號。
根據序列號安裝成企業版,否則默認是開發版(記憶里)
序列號是區分32/64位的,請不要弄錯了。

㈥ 如何破解SQL Sever資料庫密碼

查詢分析器,連接時,身份驗證使用"使用windows身份驗證"

然後,執行:

EXEC sp_password NULL, 'NewPassword', 'Sa'

企業管理器-->實例名-->安全性-->登錄-->雙擊右邊的SA-->更改密碼

㈦ 如何處理 sql被暴力破解 有人實時進行暴力破解我的sql伺服器 我該怎麼辦

不確定你說的是外網還是區域網。
除了增加密碼的復雜性外,外網的話,在路由器上阻止對應的IP訪問,如果考慮到可能是動態IP的訪問,至少需要阻止一段時間,內網務必使用行政手段處理。

㈧ 如何破解登陸Sql資料庫的密碼

使用本地賬戶登錄,登錄上去後,伺服器本地賬戶默認是管理員許可權。

然後通過 角色安全--修改你要改的賬號密碼。

如果伺服器本地賬戶登錄不上去,使用其他可用的管理員密碼也可以。這兩個都不知道,只能暴力破解。

㈨ 一般破解Sql的資料庫的方法

說破解就破解啊?如果有一般方法我們就別混了。

黑客技術不是給80分就能學到的。

㈩ sql server2008破解版下載地址

註:安裝SQL Server 2008之前,必須預先安裝NET Framework 3.5

SQL Server 2008簡體中文官方版

SQL Server 2008 序列號:
Enterprise: JD8Y6-HQG69-P9H84-XDTPG-34MBB

Developer:PTTFM-X467G-P7RH2-3Q6CG-4DMYB