静态网页
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的),大学主站