什么是Web安全?
Web安全是指保护Web应用程序、Web服务器和Web浏览器免受各种网络攻击和恶意行为的方法和技术。随着越来越多的业务和活动转移到互联网上,Web安全成为越来越重要的问题。
Web安全包括以下方面:
认证和授权:确保只有经过身份验证和授权的用户可以访问敏感信息。
输入验证:检查用户输入的数据是否合法,避免恶意用户通过输入恶意数据来攻击应用程序。
防止跨站点脚本攻击(XSS):防止攻击者在Web页面上注入恶意脚本,从而获取用户信息或执行其他恶意操作。
防止跨站点请求伪造(CSRF):防止攻击者利用受害者的Web浏览器发起伪造请求,从而执行恶意操作。
防止SQL注入攻击:防止攻击者在应用程序中注入恶意SQL语句,从而获取敏感信息或破坏数据库。
防止拒绝服务攻击(DDoS):防止攻击者通过发送大量请求来耗尽Web服务器的资源,导致服务不可用。
Web安全是一个复杂的问题,需要综合考虑各种因素和风险,并采取相应的措施来确保Web应用程序和相关系统的安全。
学习Web安全有哪些知识点?
学习Web安全需要掌握以下知识点:
常见的Web攻击类型: 例如SQL注入、跨站脚本攻击、跨站请求伪造、文件包含漏洞等。
认证和授权: Web应用程序中常用的认证和授权方法,包括基于会话的认证和授权、基于角色的访问控制、OAuth等。
密码安全: 包括密码存储和传输的安全性、密码强度和复杂度、密码策略等。
输入验证: 对用户输入进行有效性验证,包括对表单数据、URL参数、Cookie等进行验证,以防止攻击者利用输入漏洞实施攻击。
安全编程实践: 编写安全的代码、使用安全的编程技术、防止常见的编程错误等。
安全配置: Web服务器和应用程序的安全配置,包括文件权限、数据库访问权限、网络配置等。
安全漏洞扫描和评估: 使用漏洞扫描工具和安全评估方法,识别Web应用程序的安全漏洞并加以修复。
安全管理和监控: Web应用程序的安全管理和监控,包括事件日志记录、审计跟踪、安全事件响应等。
Web安全框架和工具: 使用Web安全框架和工具,如OWASP Top 10、Burp Suite等,进行Web应用程序的安全测试和评估。
Web学习计划
学习基础 时间:1周 ~ 2周:
① 我们用这段时间了解基本的概念:(SQL注入、XSS、上传、CSRF、一句话木马、常见的后台等:可以通过Google搜索获取资料)为之后的WEB渗透测试打下基础。
② 查看一些论坛的一些Web渗透资料,学一学案例的思路,每一个站点都不一样,所以思路是主要的。
③ 学会提问的艺术,如果遇到不懂得要善于提问。
配置渗透环境 时间:3周 ~ 4周:
① 了解渗透测试常用的工具,例如(AWVS、SQLMAP、NMAP、APPSCAN、BURP、中国菜刀等)。
② 下载这些工具无后门版本并且安装到计算机上,并做一个工具包,推荐Rolan。
③ 了解这些工具的使用场景,懂得基本的使用,推荐在Secwiki或者Google上查找资料。
渗透实战操作 时间:约6周:
① 在网上搜索渗透实战案例,深入了解SQL注入、文件上传、解析漏洞等在实战中的使用。
② 自己搭建漏洞环境测试,推荐DWVA,SQLi-labs,Upload-labs,bWAPP。
③ 懂得渗透测试的阶段,每一个阶段需要做那些动作:例如PTES渗透测试执行标准。
④ 深入研究手工SQL注入,寻找绕过waf的方法,制作自己的脚本。
⑤ 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架。
⑥ 了解XSS形成原理和种类,在DWVA中进行实践,使用一个含有XSS漏洞的cms,安装安全狗等进行测试。
⑦ 了解一句话木马,并尝试编写过狗一句话。
⑧ 研究在Windows和Linux下的提升权限,Google关键词:提权
经常逛网络安全有关的网站 时间:∞
① 例如:Freebuf、i春秋、安全客、看雪、91Ri.org、Sec-wiki、安全脉搏、Sec圈子社区、T00ls论坛等。
② 遇到有意义的文章可以转载到自己博客
熟悉Windows & Kali Linux 系统 时间:2周 ~ 4周
①了解Windows系统下的常用命令,如:ipconfig,nslookup,tracert,net,tasklist,taskkill等。
② 熟悉Linux系统的常用命令,如:wget、mv、cd、rm、mkdir等。
③ 熟悉Kali Linux系统下的常用工具,可以看看安全牛课堂上苑房弘老师的Kali课程[推荐1.5倍速播放],可以参考SecWiki,《Web Penetration Testing with Kali Linux》、《Hacking with Kali》等。
学习服务器的安全配置 时间:4周左右
① 了解03、08、12系统下iis的基本配置,了解Win下的目录权限(例如iis写权限),建立一个简单的站点。
② 了解Linux的运行权限、跨目录、文件夹权限,学会配置Linux Web服务器,并建立一个简单的站点。
③ 使用自动化工具扫描已经建立好的站点,并利用Google学会修补漏洞。
④ 学会打补丁、iptables限制端口、添加规则等。
⑤ 下载一款waf软件,熟悉它的使用。
学习一些编程知识 时间:约8周
① 在w3cschool上学习html、php、数据库的基础,建议每一种学到第8节就可以了。
② 学习Python(也可以是其他语言,但是强烈建议使用python)。要求学习:爬虫(基础)、多线程、文件操作、正则表达式(基础)还有一些常用的第三方库,可能需要安装pip。
③ 利用python写一个简单的poc或者exp。
④ 开发一些渗透时会用到的程序,例如:端口扫描等。
⑤ 选择一个php框架进行学习,不要太深入。
学习代码审计 时间:4周 ~ 6周
① 了解代码审计的静态和动态方法,懂得分析程序。
② 在乌云镜像里找到开源的漏洞程序,跟着学习分析方法,尝试自己分析3~5次代码。
③ 了解web漏洞形成的原因,熟悉常见漏洞函数。
安全体系开发 时间:∞
① 开发一些安全工具,并将其开源,可以托管到码云或者github上,展示个人实力。
② 建立自己的一套安全体系,拥有独立的思路方法。
学习资料分享
网络安全学习路线
这是一份网络安全从零基础到进阶的学习路线大纲全览,小伙伴们记得点个收藏!
阶段一:基础入门
该阶段学完即可年薪15w+
网络安全导论
渗透测试基础
网络基础
操作系统基础
Web安全基础
数据库基础
编程基础
CTF基础
阶段二:技术进阶(到了这一步你才算入门)
该阶段学完年薪25w+
弱口令与口令爆破
XSS漏洞
CSRF漏洞
SSRF漏洞
XXE漏洞
SQL注入
任意文件操作漏洞
业务逻辑漏洞
阶段三:高阶提升
该阶段学完即可年薪30w+
反序列化漏洞
RCE
综合靶场实操项目
内网渗透
流量分析
日志分析
恶意代码分析
应急响应
实战训练
阶段四:蓝队课程
攻防兼备,年薪收入可以达到40w+
蓝队基础
蓝队进阶
该部分主攻蓝队的防御,即更容易被大家理解的网络安全工程师。
阶段五:面试指南&阶段六:升级内容
需要上述路线图对应的网络安全配套视频、源码以及更多网络安全相关书籍&面试题等内容
同学们可以扫描下方二维码获取哦!
学习教程
第一阶段:零基础入门系列教程
第二阶段:学习书籍
第三阶段:实战文档
尾言
最后,我其实要给部分人泼冷水,因为说实话,上面讲到的资料包获取没有任何的门槛。
但是,我觉得很多人拿到了却并不会去学习。
大部分人的问题看似是“如何行动”,其实是“无法开始”。
几乎任何一个领域都是这样,所谓“万事开头难”,绝大多数人都卡在第一步,还没开始就自己把自己淘汰出局了。
如果你真的确信自己喜欢网络安全/黑客技术,马上行动起来,比一切都重要。
特别声明:
此教程为纯技术分享!本书的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本书的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施,从而减少由网络安全而带来的经济损失。!!!