日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

前言:

在之前校招面試中,sql被問到頻率是真的高,當初為了能夠在sql這塊加分,看了不少書籍,在網上也找了不少資料,走了不少彎路,慶幸的是,每次面試官問到sql相關知識,我基本都能對答如流,而且還能從一個小的知識點扯出一大堆的那種,所以呢,今天我想詳細給大家分享一下我都學習了啥,文中會給出書籍 + 看過的資料。

SQL入門

sql 入門隨便找一個教程就可以了,我看的是《SQL Server 從入門到精通》《SQL注入攻擊與防御》這兩本書,跟著書敲代碼即可,感覺一兩周周時間就可以快速刷完了,反正命令不用死記硬背,需要用的時候,翻開書本會用就行了,后面去刷一刷 sql 的練習題,

入門階段最重要的就是要大致知道 sql 有哪些關鍵字,還有就是關鍵字直接的執行順序,例如像 join,have,order by,聚合函數等等,知道個大概就行,之后要多練習,否則很容易一問三不知,至于那里練習,我上面已經跟大家說了。

SQL注入

什么是SQL注入

SQL注入即是指web應用程序對用戶輸入數據的合法性沒有判斷或過濾不嚴,攻擊者可以在web應用程序中事先定義好的查詢語句的結尾上添加額外的SQL語句,在管理員不知情的情況下實現非法操作,以此來實現欺騙數據庫服務器執行非授權的任意查詢,從而進一步得到相應的數據信息

SQL的類型 Structured Query Language

  • DQL: Query, select
  • DML: Manual, insert update delete
  • DDL: Define, create drop alter
  • DCL: Control, grant revoke commit rollback
  • 函數數:字符串函數、數字函數、日期函數
  • 運算符:算術運算符、比較運算符、邏輯運算符、位運算符

IPv4地址

192.168.1.110

1100 0000 1010 1000 0000 0001

端口

  • FTP 21
  • SSH 22
  • Tomcat 8080
  • MySQL 3306
  • redis 6379

域名(domain name)

  •  頂級域名.com .net .org
  •  國別域名.cn (中國).us (美國)jp (日本)

子域名:

www.baidu.com、 map.baidu.com、 tieba.baidu.com

DNS (Domain Name System)

用戶頭像SQL 入門到入魔(SQL 注入原因和流程)

 

DNS解析流程

用戶頭像SQL 入門到入魔(SQL 注入原因和流程)

 

端口和文件

用戶頭像SQL 入門到入魔(SQL 注入原因和流程)

 

項目架構

用戶頭像SQL 入門到入魔(SQL 注入原因和流程)

 

SQL注入的發生

用戶頭像SQL 入門到入魔(SQL 注入原因和流程)

 

 如何獲取數據庫信息

  • show命令
  • select + 函數
  • 系統庫

MySQL系統庫(5.7)

用戶頭像SQL 入門到入魔(SQL 注入原因和流程)

 


用戶頭像SQL 入門到入魔(SQL 注入原因和流程)

 


用戶頭像SQL 入門到入魔(SQL 注入原因和流程)

 

GET請求

http://localhost/school/url.php?id = 1

參數會如何處理?

user=admin&password=123456
"select * from test where user = ” + user + " and password = ” + password

怎么傳入SQL?

如何結束一個SQL?

點查詢分析器上的紅方塊,或者直接終止進程.不過,SQL2000這樣做,語句就丟失了,但是2005在打開查詢分析器時會提示是否恢復.

如何忽略后續語句?

void Func(int _flag)
{
try
{
if (_flag & 1> 0)
{
_falg &= ~1;
statement1
}
if (_flag & 2> 0)
{
_falg &= ~2;
statement2
}
if (_flag & 4> 0)
{
_falg &= ~4;
statement3
}
...
}
catch (Exception ex)
{
//如何返回使繼續下意語句的執行
//即:如果statement1出錯,不理會,繼續執行statement2...
Func(_falg);
}
}

什么語句可以包含兩個以上的select?

1.

select * from test where class = 1 or class = 2 order by id desc

2.

const String strconn = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=Z:\test.mdb";
OleDbConnection conn=new OleDbConnection(strconn);
DataSet ds=new DataSet();
conn.Open();
string sql="select * from test where class = 1 order by id desc";
OleDbCommand cmd=new OleDbCommand(sql,conn);
OleDbDataAdapter adapter1=new OleDbDataAdapter(cmd);
adapter1.Fill(ds,"class1");

sql="select * from test where class = 2 order by id desc";
adapter1.SelectCommand.CommandText = sql;
adapter1.Fill(ds,"class2");

conn.Close();

 

SQL注入的完整流程

  • 判斷是否可以注入
  • 獲得數據庫名
  • 獲得集名
  • 獲取列名
  • 獲得數據

其他知識

哈希破解

哈希算法可以檢驗信息是否是相同的,這樣的優勢可以節省重復文件傳送的時間。
舉一個生活中很平常的例子,我們在生活工作中會使用一些軟件給別人傳送文件數據,如果有人傳送了一份文件給一個人,然后又有一個人傳送了相同的文件給了另外一個人,那么這個社交軟件在第二次傳送文件的時候會對比兩次傳送的哈希值,發現是相同的,該軟件就不會再次上傳文件給服務器了。
除此之外,哈希算法還可以檢驗信息的擁有者是否真實。
比如,我們在一個網站注冊一個賬號,如果網站把密碼保存起來,那這個網站不論有多安全,也會有被盜取的風險。但是如果用保存密碼的哈希值代替保存密碼,就沒有這個風險了,因為哈希值加密過程是不不可逆的

子域名挖掘

用戶頭像SQL 入門到入魔(SQL 注入原因和流程)

 

URL采集

分享到:
標簽:注入 SQL
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定