靜態網頁
html或者htm,是一種靜態的頁面格式,不需要服務器解析其中的腳本。由瀏覽器如(IE、Chrome等)解析。
- 不依賴數據庫
- 靈活性差,製作、更新、維護麻煩
- 交互性較差,在功能方面有較大的限制
- 安全、不存在SQL注入漏洞
動態網頁
asp、aspx、php、jsp等,由相應的腳本引擎來解釋執行,根據指令生成靜態網頁。
- 依賴數據庫
- 靈活性好,維護簡單
- 交互性好,功能強大
- 存在安全風險,可能存在SQL注入漏洞
工作流程
-
正常用戶訪問網頁的具體流程如下圖
-
黑客攻擊網站(sql注入)的具體流程如下
服務器
-
WIndows
-
代表:Windows2003、Windows2008、…
-
常見漏洞:“永恆之藍”(MS17-010),MS08-067(比較古老但很經典的漏洞)
-
Linux
-
代表Ubuntu、centos、Redhat
Web服務器
- Web服務器也稱爲HTTP服務器,它是響應來自瀏覽器的HTTP請求,並且發出網頁文件的軟件。
- 當訪問者在瀏覽器的地址文本框中輸入一個URL,或者單機在瀏覽器中打開頁面上的某個鏈接時,便生成一個網頁請求。
- 常見的web服務器:IIS、Apache、Nginx、tomacat、weblogic…
IIS
- IIS(Internet 信息服務器)是Internet information services的縮寫,是微軟提供的Internet服務器軟件,包括WEB、FTP、SMTP等服務器組件。
- 常見漏洞:IIS短文件泄露、IIS解析漏洞、IIS6.0遠程代碼執行
Apache
- Apache是Apache軟件基金會的一個開放源碼的網頁服務器,世界使用排名第一的Web服務器軟件
- 常見漏洞:apache解析漏洞、apache日誌文件漏洞
Nginx
- Nginx是一個高性能的HTTP和反向代理服務器,也是一個IMAP/POP3/SMTP服務器。
- 常見漏洞:Nginx解析漏洞、整數溢出漏洞
Tomcat
- Tomcat服務器是一個免費的開放源代碼的Web應用服務器,術語輕量級應用服務器,在中小型系統和併發訪問用戶不是很多的場合下被普遍使用,是開發和調試JSP程序的首選。
- 常見漏洞:tomcat弱口令、tomcat遠程代碼執行、本地提權
Weblogic
- Weblogic是一個基於javaee架構的中間件,Weblogic使用於開發、集成、部署和管理大型分佈式Web應用、網絡應用和數據庫應用的Java應用服務器。
- 常見漏洞:Java反序列化、SSRF(服務器端請求僞造)
數據庫
- 數據庫
數據庫是按照數據結構來組織、儲存和管理數據的“倉庫”
- 結構化查詢語言
結構化查詢語言(Structured Query Language)簡稱SQL,結構化查詢語言是一種數據庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關係數據庫系統。
- 數據庫分類
MySQL、MSSQL、Access、Oracle、Sqlite
- 數據庫管理軟件
Phpmyadmin、navicat
開發語言及常見框架/cms
- PHP
開發框架:codelgniter、ThinkPHP
cms(內容管理系統):phpcms、dedecms、qibocms… - SAP
cms:aspcms、動易cms、南方數據… - .NET
cms:SiteServer - JSP
開發框架:struts2、Spring MVC
cms:jeecmcs、大漢cms
web常見架構
- LAMP
linux+Apache+MySQL+PHP
使用於大型網站結構,穩定性高,常見於企業網站
- WAMP
Windows+Apache+MySQL+PHP
使用於中小型網站架構,易於管理,常見於教育(大學等)、政府事業單位(常用phpcms作爲網站cms)
- 其他常見組合
PHP+IIS(IIS常和asp和aspx搭配)
部分網站可能會使用這種架構,但是偏少
ASP+IIS
常見於學校,政府(地方)等單位
.NET+IIS(aspx)
常見於學校(比如正方教務系統),政府,醫院等,部分企業網站也會使用這種架構
JSP+Tomcat
金融、政府(大型,一般市級以上會是jsp的),大學主站