『Web安全』入门级实战教程——Web基础(一)
这是一个为开发、运维及安全从业者构建的:
系统的拆解Web安全的关键领域。
内容涵盖 “原理深入-实战驱动-体系构建”
为你提供一条清晰的进阶路径。
使你在面任何新型漏洞时,迅速定位问题,理解漏洞本质,形成有效的防御思路。
Web基础
基础概念
Web App(或Web应用程序)
是运行于网络和标准浏览器上,基于网页技术开发实现特定功能的应用。
前端:HTML,CSS,JavaScript
后端:Java,Python, PHP
数据库:MySQL,Oracle,MongoDB
容器:Windows(llS),Linux(Nginx, Apache)
协议:TCP, DNS, HTTP, HTTPS
步骤解析
站在用户角度
输入一个地址后
浏览器就会呈现一个网页
深入原理分析后,
我们会发现底层执行的逻辑顺序
(1) 当客户输入URL时,DNS会解析URL得出IP地址,然后根据IP地址找出对应服务器。
(2) 客户机通过TCP/IP协议建立到Web服务器的TCP链接
(3) 客户机向Web服务器发送HTTP请求报文,请求服务器里资源的资源文档
(4) Web服务器接收到客户机的HTTP请求报文,然后向客户机发出HTTP响应报文
(5) 接下来会进入请求种类的问题,服务器在处理三种请求时,其行为各不相同
①HTML文档,web服务器会将对应目录下相应的HTML文档打开,然后将文档的响应内容发送给客户机。
②PHP文件,web服务器自身是不能处理PHP动态语言脚本文件的,然后就会寻找并委托PHP应用服务器,PHP应用服务器会将Web服务器请求的PHP文件解析成HTML静态代码,然后将HTML静态代码发送给Web服务器,最后Web服务器会将HTML静态代码发送客户机。
③访问数据库,则Web服务器会通过PHP应用服务器去访问数据库。
(6) 最后,针对收到内容进行解析以及进一步的渲染
(7) 完成了整个访问流程之后,会与服务器断开连接
常见的Web服务器
(1)Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源代码的网页服务器软件,可以在大多数电脑操作系统中运行,由于其跨平台和安全性被广泛使用,是最流行的Web服务器软件之一。
(2)Nginx是一个网页服务器,能反向代理HTTP, HTTPS,SMTP,POP3,IMAP的协议链接,以及一个负载均衡器和一个HTTP缓存。Nginx是一款面向性能设计的HTTP服务器,相较于Apache、lighttpd具有占有内存少,稳定性高等优势。
(3)IIS(InternetInformationServer)是微软公司主推的服务器。
(4)Lighttpd是德国人领导的开源Web服务器软件,具有极低的内存开销、CPU占用率低、效能好以及丰富的模块等特点。
(5)Tomcat是Apache软件基金会的Jakarta项目中的核心项目,Tomcat技术先进、性能稳定,且免费,因而深受Java爱好者的喜爱,成为目前比较主流的Web应用服务器。
案例
一个最简单的啊web服务器,功能是如何实现的
使用语言为Python
定义handle Request这个函数
职能是接收客户端发现服务器的请求,
同时打印这个请求,进一步返回”hello world”的内容
用HTTP协议封装成一个包后
返回给客户端
整个请求处理函数非常简单,
通过浏览器来访问,实际运行起来
我们的访问直接被解析成了hello world
HTTP Server也接收到了正常的HTTP请求报文
并返回了正常内容。
区别于不同的浏览器,访问Web Server时,所产生的区别
(以上测试过程使用chrome浏览器)
应用框架
Web应用框架(Web application framework)是一种开发框架,用来支持动态网站、网络应用程序及网络服务的开发。其类型有基于请求的和基于组件的两种框架
有助于减轻网页开发时共通性活动的工作负荷,例如许多框架提供数据库访问接口、标准样板以及会话管理等,可提升代码的可再用性
目前市场上的框架很多,这里根据前端和后端分类
给大家简单的罗列几个框架
前端
后端
Django框架
Django是一个开放源代码的Web应用框架****,由Python写成。
采用了MTV的框架模式,
模型M(Model)
视图V(View)
模版T(Template)
最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即CMS(内容管理系统)软件,于2005年7月在BSD许可证下发布。
我们这次就使用Django框架,
来搭建一个简单的网站。
首先需要我们安装一下Django的环境,
安装Django环境
Python3.7 -m pip install django
这里我们通过pip install的命令来安装Django。
然后我们创建第一个项目,
Django-admin startproject mysite
创建的命令通过Django内置命令,Django admin的方式来实现。
创建好的项目的目录结构分为四层
①Manage.py
Django为我们提供的一个用于管理本项目的命令行工具 在mysite文件夹下,还有四个Python的源码文件**②******init\_.py**** 一个普通的包初始化模块③settings.py
Django项目的配置文件,本项目引用的组件,项目名,数据库配置,时间、语言,静态文件访问地址和存储路径.④wsgi.py Web Server gateway interface
接口信息用于服务器部署建好后,我们可以简单运行,看看实际的运行效果
这里通过Manage.py来从命令行执行
这里绑定的时本地8000端口
刷新后,可以看到项目已经成功运行
现在,我们新增一个APP和页面,
通过Django-admin startapp命令,创建我们的第一个app
这里已经成功创建了第一个app
它的名称是
接下来需要我们修改配置文件
配置文件在这个项目的mysite文件夹下面的settings
我们挨个看一下需要修改的点
① INSTALLED-APP是为了让他能索引到我们新增的应用
② TEMPLATES是使它能索引到后面即将加入本项目的前端页面文件
③ ALLOWED-HOSTS是使它能被其他外界的IP地址访问
修改完毕后,需要我们添加执行层代码以及URL的映射关系
执行层代码进入我们第一个创建的应用firstapp
它的执行代码文件views.py
我们定义第一个函数为firsthtml
这个函数的职能是直接渲染并且返回
我们定义静态文件index.html
修改urls.py
使它能将用户的URL访问地址,链接到我们的执行代码
urls.py的位置是在我们项目文件夹下的
定义地址为hello world
执行的代码是views.里面,我们刚刚所定义的函数firsthtml
注意:这里需引入views,否则无法找到
下一步,创建templates文件夹,用于存放index.html的内容
创建成功后
我们看看目前的效果
通过地址访问
目前我们已经成功定义了我们的地址,并成功执行了执行层代码,服务器向我们返回了hello,这就是我们刚刚所定义的代码
下一步,我们将初始化数据库并创建我们的超级管理员账号
执行的命令是通过manage.py进行createsuperuser
创建完成后重新启动服务器,然后访问管理后台
用我们刚刚创建的超级管理员账户进行登录
大部分的外部框架都会给我们提供一个管理后台
进行内容和整个网站用户的管理。
未完待续
下一部分,我们将详细展现,HTTP的运行流程、请求方式、操作案例,以及Web安全所运用的工具和插件。
黑客/网络安全学习路线
今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。
网络安全学习资源分享:
下面给大家分享一份2025最新版的网络安全学习路线资料,帮助新人小白更系统、更快速的学习黑客技术!
一、2025最新网络安全学习路线
一个明确的学习路线可以帮助新人了解从哪里开始,按照什么顺序学习,以及需要掌握哪些知识点。
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
**读者福利 |**CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享**(安全链接,放心点击)**
我们把学习路线分成L1到L4四个阶段,一步步带你从入门到进阶,从理论到实战。
L1级别:网络安全的基础入门
L1阶段:我们会去了解计算机网络的基础知识,以及网络安全在行业的应用和分析;学习理解安全基础的核心原理,关键技术,以及PHP编程基础;通过证书考试,可以获得NISP/CISP。可就业安全运维工程师、等保测评工程师。
L2级别:网络安全的技术进阶
L2阶段我们会去学习渗透测试:包括情报收集、弱口令与口令爆破以及各大类型漏洞,还有漏洞挖掘和安全检查项目,可参加CISP-PTE证书考试。
L3级别:网络安全的高阶提升
L3阶段:我们会去学习反序列漏洞、RCE漏洞,也会学习到内网渗透实战、靶场实战和技术提取技术,系统学习Python编程和实战。参加CISP-PTE考试。
L4级别:网络安全的项目实战
L4阶段:我们会更加深入进行实战训练,包括代码审计、应急响应、红蓝对抗以及SRC的挖掘技术。并学习CTF夺旗赛的要点和刷题
整个网络安全学习路线L1主要是对计算机网络安全的理论基础的一个学习掌握;而L3 L4更多的是通过项目实战来掌握核心技术,针对以上网安的学习路线我们也整理了对应的学习视频教程,和配套的学习资料。
二、技术文档和经典PDF书籍
书籍和学习文档资料是学习网络安全过程中必不可少的,我自己整理技术文档,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,(书籍含电子版PDF)

三、网络安全视频教程
对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的网安视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识。
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。
四、网络安全护网行动/CTF比赛
学以致用,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。

五、网络安全工具包、面试题和源码
“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

面试不仅是技术的较量,更需要充分的准备。
在你已经掌握了技术之后,就需要开始准备面试,我们将提供精心整理的网安面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。
如果你是要找网安方面的工作,它们绝对能帮你大忙。
这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。
参考解析:深信服官网、奇安信官网、Freebuf、csdn等
内容特点:条理清晰,含图像化表示更加易懂。
内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…