讀網站入侵和腳本攻防筆記web
據不徹底統計,每20秒就會發生一件網絡入侵事件。全球損失大概數百億;我國百分之九十的網站存在安全問題,這些黑客經過web服務端口80端口進行攻擊,web攻擊能夠改變站點的目錄,嚴重的盜取重要客戶的資料。sql
常見的腳本攻擊有:sql腳本注入攻擊等;數據庫
明白幾個SQL中用到的關鍵詞:數據表(table)、記錄(data record)、字段(field)、查詢(query)、SQL、索引(index)和鍵(key).安全
數據表(table):指的是用來存放實際相關數據的框架結構,這種數據表裏面的每一行被稱爲一條數據記錄(data record),例如:在咱們的網站中有一張是用戶表,這個表中可能包含姓名、電話、性別、等多個字段(field)。對於一個數據庫的描述被稱爲數據庫模型(database model),它是由這個數據庫裏面的全體數據表及他們的全部的字段、關係和索引構成的。數據庫模型不只要定義所涉及的各類數據結構的總體框架,還必須同時給出將存放於此處的數據存儲格式。網絡
查詢(query)和SQL:查詢是經過各類SQL指令執行的,SQL指令負責完成篩選和提取結果數據的工做。數據結構
索引(index)和主鍵(primary key):隨着數據量的增大,數據庫數據量的增大,查詢速度每每會由於數據量而受很大的影響,所以爲了提升查詢速度,須要爲數據創建適當的索引。索引雖然提升了速度可是也是存在一些問題的:增長數據庫文件在硬盤上的空間佔用量。索引必須隨原始數據的改變而同步更新纔有實際的意義,這樣的話在讀取數據的時候索引是能夠節約時間的;可是在輸入或者修改數據的時候,索引反而會下降速度。框架
數據庫管理系統(Database Management System)是一種操做和管理數據庫的軟件,是用於創建、使用和維護數據庫,簡稱DBMS。目前數據模型比較重要的3中類型:分級模型、網絡模型和關係模型。基於關係模型的數據庫管理系統,被稱爲關係型數據庫管理系統,簡稱(RDMS)。目前比較著名的有:Oracle、Sybase、Microsoft SQL Server、Microsoft Access、Mysql.函數
下面介紹幾條重要的SQL語句:網站
1.數據記錄spa
sql="select * from table where 字段名=字段值 order by 字段名 [desc]";
sql="select * from table where 字段名 like '%字段值%' order by 字段名 [desc]";
sql="select top 10 * from table where 字段名 order by 字段名 [desc]";
sql="select * from table where 字段名 in ('值1','值2','值3')";
sql="select * from table where 字段名 between 值1 and 值2"
2.更新數據記錄
sql="update table set 字段名=字段值 where 條件表達式"
sql="update table set 字段1=值,字段2=值2......where 條件表達式"
3.刪除添加數據
sql="delete from table where 條件表達式"
sql="delete from table"(將刪除全部數據)
sql="insert into table (字段1,字段2,字段3 ....) values (值1,值2,值3.....)"
sql="insert into 目錄table select * from 源table"(把源數據表的記錄添加到目錄數據表)
4.統計函數
avg(字段名) 平均值
count(*|字段名) 數據錶行數
max(字段名) table 欄最大值
min(字段名) table 欄最小值
sum(字段名)把數據欄的值相加
sql="select sum(字段名) as 別名 from table where 條件表達式"
set rs=conn.excute(sql)
5.數據表的創建和刪除
create table 數據表名稱(
字段1 類型1 (長度),
字段2 類型2 (長度),.........
);
刪除數據表
drop table 數據表名(永久性刪除)