php自学方法(零基础如何学习 Web 安全?【鹏越·学霸专区】)

wufei123 发布于 2024-09-29 阅读(1)

点击蓝色字关注我们!1

余弦:这是个好问题,我强迫症犯了,本来你写的是“web”,我改为了“Web”因为正好Web安全是我擅长的,你说的是0基础,我总结下我的一些看法吧,针对0基础的一. 首先你得了解WebWeb分为好几层,一图胜千言:。

事实是这样的:如果你不了解这些研究对象是不可能搞好安全研究的这样看来,Web有八层(如果把浏览器也算进去,就九层啦,九阳神功……)!!!每层都有几十种主流组件!!!这该怎么办?别急,一法通则万法通,这是横向的层,纵向就是数据流啦!搞定好数据流:从横向的层,从上到下→从下到上,认真看看这些数据在每个层是怎么个处理的。

数据流中,有个关键的是HTTP协议,从上到下→从下到上的头尾两端(即请求响应),搞通!难吗?《HTTP权威指南》720页!!!坑爹,好难!!!怎么办?横向那么复杂、纵向数据流的HTTP协议就720页的书!!!放弃好了……

不,千万别这样给你点信心是:《HTTP权威指南》这本书我压根没看过但是通过百度/Google一些入门的HTTP协议,我做了大概了解,然后Chrome浏览器F12实际看看“Network”标签里的HTTP请求响应,不出几小时,就大概知道HTTP协议这玩意了。

(这是快速研究的精髓啊)搞明白HTTP协议后,你就会明白安全术语的“输入输出”黑客通过输入提交“特殊数据”,特殊数据在数据流的每个层处理,如果某个层没处理好,在输出的时候,就会出现相应层的安全问题精彩举例:

1. 如果在操作系统层上没处理好,比如Linux的Bash环境把“特殊数据”当做指令执行时,就产生了OS命令执行的安全问题,这段“特殊数据”可能长得如下这般:; rm -rf /;2. 如果在存储层的数据库中没处理好,数据库的SQL解析引擎把这个“特殊数据”当做指令执行时,就产生SQL注入这样的安全问题,这段“特殊数据”可能长得如下这般:

union select user, pwd, 1, 2, 3, 4 fromusers--3. 如果在Web容器层如nginx中没处理好,nginx把“特殊数据”当做指令执行时,可能会产生远程溢出、DoS等各种安全问题,这段“特殊数据”可能长得如下这般:

%c0.%c0./%c0.%c0./%c0.%c0./%c0.%c0./%204. 如果在Web开发框架或Web应用层中没处理好,把“特殊数据”当做指令执行时,可能会产生远程命令执行的安全问题,这段“特殊数据”可能长得如下这般:

eval($_REQUEST[x]);5. 如果在Web前端层中没处理好,浏览器的JS引擎把“特殊数据”当做指令执行时,可能会产生XSS跨站脚本的安全问题,这段“特殊数据”可能长得如下这般:">alert(/cos is myhero./)

...怎样,刺激吧?搞懂这些,就算入门啦• 记好:一切的安全问题都体现在“输入输出”上,一切的安全问题都存在于“数据流”的整个过程中• 记好:“数据流”、“输入输出”这两个关键点你好像悟到了点什么,咱们继续……。

前面说了:如果你不了解这些研究对象是不可能搞好安全研究的拿我XSS来说,曾经有人问我,我回答的一个:在学习XSS前我应该学习什么?你可与参考下假如我曾经要不是比较熟JavaScript、ActionScript、HTML/CSS的话,我估计我要研究好XSS是很困难的,我熟悉这些语言刚开始的出发点是想“创造”,我做了好些Flash动画、做了好些网站、包括自己从后端到前端独立实现过一个博客系统,为了解决好前端在各浏览器的兼容问题(当时是IE6如日中天的时候),我啃了好几本书,如《CSS网站布局实录》、《JavaScript DOM编程艺术》、《AJAX Hacks》、Flash从6版本以来到CS2的各类书籍我都多少看过,也实战过,这一切都是在大学前三年搞定的。

大学第四年冲刺Web安全(长期以来有黑客情怀),大四下学期进入知道创宇(刚创业起步),然后到了现在,一晃在知道创宇六年说到这,很清晰啦:如果你不了解这些研究对象是不可能搞好安全研究的咱们继续:)二. 黑客兵器谱。

新人入门总在寻找好工具来提高效率,Web安全这块我之前放出了我的“兵器谱”,在这:我的渗透利器(会不断抽时间更新)工欲善其事必先利其器嘛,而且新人用了好兵器会更有成就感的切记:这些兵器,你不仅要知其然还得知其所以然,别堕落了哦。

三. 明白“精于一而悟道”的道理不多说,请看这我的回答:对于立志在网络安全领域发展,应该如何系统学习安全知识?四. 融入圈子多结交些靠谱的黑客,搞搞基啦(不过别来真的,还有我好讨厌扯淡/水得不得了的人),微博(含:Twitter)、QQ、微信、知乎、博客等善于跟进,不仅学,也要分享,让大家知道你的存在,更有利于交流与成长。

如果你对我有兴趣,可以看我的介绍:关于余弦,我自认为我自己靠谱(不,这不是浮夸,这是自信)。关于“圈子”,我想说:别把自己局限住。最后,再次引用黑哥的一句话:“整就牛!”2

菲哥哥:从我自己的亲身经历出发给你一些学习心得~我是偶尔去网吧接触到黑客~从此踏上了自学黑客之路~最近看的书推荐web黑客第二版xss攻击剖析与防御企业级代码审计web测试相关技术1.专注我觉得在学习网络安全和任何东西的时候都要分阶段专注学习、比如研究xss 那我这一个月就什么也不做只研究xss 把xss研究到极致,然后在研究下一个课题xss通常结合csrf利用那么切忌不要因为xss会结合csrf使用就把研究重点放到csrf,要有重点的研究东西,一个月后可进行下一个课题研究。

这是我写的一篇关于flash xss的总结希望能够帮到你Flash XSS攻击总结2.整理笔记这个我觉得最重要,这是一个好习惯 可以让我们重新把学习的技术做一个总结和巩固在总结的过程形成自己对技术的理解与创新。

3.多看书和分析文章比如我在学习代码审计的时候,最有效的方法 我是这样做的代码审计在我们学习以前先去阅读相关的书籍然后找两片分析0day的文章,照葫芦画瓢分析文章中一样版本的代码,这对你成长很有帮助,进步也非常快。

学习思路在不了解黑客技术的时候觉得 盗qq 中木马是很高深的~这些其实没有技术含量~不要沉迷于此直接略过~跑题了这是做web安全先去百度下webshell 一句话木马 是什么~首先要学一门脚本语言推荐php不用学的太灵通,了解一些危险函数即可如 get post 请求 open exec 等函数会造成什么漏洞……了解了php中的危险函数会造成那些漏洞可举一反三套用到别的脚本需要当中如 asp aspx java这些语言的危险函数可能只是写法不一样功能是相同的~

Javascript 要好好学习一下 然后了解xss的原理~以及csrf 的原理……关于xss初学者需要了解一些 html实体 html实体的10 或16进制 ,以及javascript 的8进制和16进制编码 双字节漏洞,提供一个学习地址以上知识在这都用讲解

http://xss.pkav.net/xss/在学习 XSS 前应该学习什么?然后就是数据库了~mysql sqlserver 随便先学一个~前期学会 selsct 就行,结合php尝试自己写一个查询数据库的脚本 ~来了解sql注入的原理~这样进步会很快……

Http请求时候的一些参数也需要做一些了解,如user_agentX-Forwarded-ForReferer等参数 这些参数也会造成一些安全问题…… 下面就是服务器本身的漏洞与编辑器上传也需要了解如Iis 解析漏洞

nginx 解析漏洞tomcat 后台上传jbossfckediteweb可自行网上搜索这些服务器都有哪些web渗透测试部分信息搜集二级兄弟域名搜集利用DNS域名传送漏洞搜集二级域名Liunx测试命令如下:

Dns服务器 1.1.1.1 测试域名http://wooyun.orgdig @1.1.1.1 http://sechook.org axfrnmap --script dns-zone-transfer--script-args dns-zone-transfer.domain=http://wooyun.org -p 53 -Pn 1.1.1

实例查询苏宁DNS服务器D:\deep>nslookup默认服务器: localhostAddress: 10.11.0.1> set type=ns> http://suning.com服务器: localhost

Address: 10.11.0.1非权威应答:http://suning.com nameserver =http://lns1.zdnscloud.infohttp://suning.com nameserver =http://gns2.zdnscloud.net.cn

http://suning.com nameserver =lns2.zdnscloud.bizhttp://suning.com nameserver =http://gns1.zdnscloud.net

> 查询苏宁http://suning.com IPC:\Users\jack>nslookup http://suning.com服务器: localhostAddress: 10.11.0.1非权威应答:

名称:http://suning.xdwscache.ourwebcdn.comAddresses: 203.130.60.48 //对应ip203.130.60.49 //对应ip203.130.60.50 //对应ip

Aliases: http://suning.comhttp://Suning.com.wscdns.com //别名在线二级域名爆破网站https://dnsdumpster.com/Netcraft - Search Web by Domain

工具获取二级域名渗透测试中常用的在线工具--SecWiki 专题 参考链接subDomainsBrutewydomaintheHarvester.pyFierceDigknockdnsspiderSubDomainscollect

SubBrutedirfuzz使用格式:fierce -dns http://baidu.com -threads 3subDomainsBrute.py http://suning.compython theHarvester.py -d http://suning.com-l 500 -b baidu -v 国内百度找的多

python theHarvester.py -d 公司名 -l 500 -b baidu -vpython theHarvester.py -d http://suning.com-l 500 -b google -v国外站google多

python theHarvester.py -d school -l 1000 -ball all使用所有的搜索引擎进行搜索subDomainsBrute使用需要安装依赖支持报错信息:ImportError: No module nameddns.resolver

需要安装的库是 dnspython pip installdnspython 没有pip的话, 可以用到https://github.com/rthalley/dnspython.git下载 cd dnspython python setup.py install

搜索引擎 Google新经验:+ 把google可能忽略的字列如查询范围 - 把某个字忽略 ~ 同意词 . 单一的通配符 * 通配符,可代表多个字母 "" 精确查询代码托管泄漏信息搜索Google:http://andy-game.googlecode.com/svn-history/

Gitbub: https://github.com/search?utf8=%E2%9C%93&q=%E5%A4%96%E7%BD%91+%E8%B1%86%E7%93%A3&type=Code&ref=searchresults

邮箱搜集Metasploit邮箱搜集链接http://xiao106347.blog.163.com/blog/static/215992078201311300162776/n ip反查域名http://dns.aizhan.com/58.240.86.229/

二级兄弟域名搜集查询邮件服务器信息目标IP地址范围搜集利用代码托管网站搜集目标信息确定ip 地址范围扫描c段获取cdn真实ip地址社会工程学3

小书ivanlong:有几个朋友也问过我类似的问题,诸如如何让新人学习快速上手Web安全,这里我也梳理了一些自己的看法在答案的最后,我会给大家一个简答、直接的解决方案,希望对零基础的同学有所帮助一. 从零基础开始。

正所谓万丈高楼平地起,既然是零基础,那么首先就需要打基础,不了解基础的Web知识,何谈Web安全?Web知识本身就非常丰富,覆盖范围也非常广泛:从浏览器到服务器、数据库;从HTML、JavaScript和CSS到PHP、Java、ASP(.net);

从页面加载到DOM渲染;从静态页面到MVC;从URL协议到HTTP协议;还有CDN、代理、Web容器等等如果让你花很长时间完全掌握这些知识,再学习Web安全,你觉得你还有兴趣麽?那么问题来了:一个Web安全爱好者,学Web知识,要学到什么程度?Web有哪些知识?怎么学?。

•      Web知识过少,基础不牢靠,会导致后面的学习乏力,严重影响Web安全的学习效率;•      Web知识过多,容易偏离主题,忘记了初衷,也会逐渐缺乏学习的动力;所以,如何把握这个度,是初学者的一个难题。

二. 入门掌握了Web基础知识,说一句残酷的但是很现实的大实话,你还是没有入门!这里作为一个老司机给一些建议:1. 和大部分老司机一样,我会建议大家多看书个人来讲,这些书籍并不适合入门,因为这些书籍都是需要一定的门槛;但是就目前来看,书籍算是比较靠谱的入门资料。

比如《白帽子讲Web安全》《Web之困 - 现代Web应用安全指南》《黑客攻防技术宝典 - Web实战篇》《Web前端黑客技术揭秘》幸运的是现在Web安全书籍比较多,比较遗憾的是当年我学习Web安全的时候还没有刺总的《白帽子讲Web安全》,这也导致我在后面的Web安全学习历程中走了不少的弯路。

2. 建议大家多关注牛人的Blog、论坛、安全类的网站和微信公众号比较幸运的是那个时代,大部分Web安全牛人的都在集中在百度空间分享技术知识,包括大家比较了解的黑哥、刺等,现在百度空间已经死去,缅怀一下那个纯粹的技术分享时代;

现在大部分的技术分享都集中化,集中到了各个安全论坛、网站,比较悲哀的是我觉得非常不错的乌云drops ,又逝去了一个高质量的技术文章分享圈不过作为入门,以下几个安全类网站也是不错的:FreeBuf.COM | 关注黑客与极客。

安全脉搏安全客 - 有思想的安全新媒体聪明的同学自然知道关注他们的知乎专栏、微信公众号3. 我也会建议大家去参加一些“靠谱”的培训班和在线培训在学习知识的过程中,从零基础自学成材的过程是有难度的,所以,如果大家没有一个好的“老师”带领的话,其实参加一些“靠谱”的培训班和在线培训,是很有必要的。

大部分早期接触Web安全的老司机都有感慨,很多知识都是靠自己琢磨过来的当时,并没有一个好的老师和系统化的课程,所以我们走了很多弯路;同时,由于缺乏体系化的学习,我们在入门之后存在一些知识盲区,需要在后续的学习中耗费大量的时间和精力去不断的完善自己的知识体系。

所以一个“靠谱”的培训,是非常重要的三. 一个带有私心的解决方案现在的Web基础知识教学资源中,没有一个是从Web安全去考虑这些问题同时,大部分的Web安全教学资料(视频、书本),都是假定用户已经掌握了Web基础知识,并非从0基础考虑。

所以,如何在Web基础知识中融入Web安全知识,提升学员的兴趣,是针对零基础教学的一大难点我也看过很多教学课程,大部分都是讲几个漏洞、几个工具,并没有梳理成体系化的知识,这样会导致大家学习后的知识盲点较多,学习到后面非常乏力。

当然,也有少数几个非常不错的教程,但是可能由于制作者精力有限,并没有配套的教学服务,包括课后练习、实战环境、课程测验、讨论和直播答疑等同时,我们在学习Web安全的过程中,会遇到很多问题:我在前面提到过的“一个Web安全爱好者,学Web知识,要学到什么程度?Web有哪些知识?怎么学?”就是一个学员自身很难解决的问题?。

还有很多在实际学习过程的问题,比如:•      我按照这个书本的知识学习,发现很多都不懂怎么办?•      我按照视频教程学习,发现这个XSS在我的浏览器不弹窗怎么办?•      我下载的工具安装不成功怎么办?

•      我明明已经掌握了这个漏洞的知识,为什么还是挖不到漏洞?•      我没有练手的环境,怎么办?•      我怎么知道我学习的怎样了?•      等等如果同学们长时间解决不了这些问题,就会逐渐对Web安全失了兴趣,或者会进入滞留期,Web安全技能难以得到提升。

最终,我们下定决心制作了一个针对初学者入门的《Web安全工程师》微专业说实话,最开始让我们制作这个专业课程,我是拒绝的讲的深了,学员听不懂,课程效果不好,白费力; 讲的浅显,又怕同行笑话但是,我们还是下定决心的去做了这样一个的入门课程。

说句实话,不怕同行笑话是假的但是,面对这个行业的人才缺失,而大部分想学习Web安全的同学又觉得入门太难的窘境,我希望我们的课程可以帮助他们我希望我们在面试的时候,不会再遇到一大堆面试这个职业却对Web安全一无所知或者毫无建树的同学。

作者:余弦 菲哥哥 小书ivanlong(转自知乎)

声明:本文内容或图片来自互联网收集或网友投稿,如有版权问题请与我们取得联系:webadm@pengyueisos.com现在关注“鹏越网络空间安全研究院”微信公众号,在对话框中输入“工控”、“培训”、“

CTF” 、“物联网”、 “人工智能”、“招聘”等关键字,系统自动推送相应内容今后我们还会推出更多方便搜索和阅读的服务,敬请期待!近期赛虎-鹏越“工业控制系统安全运维师(CIIP-I)”培训开始报名了!培训时间为6月19日-6月22日,欲了解详情,。

请戳 赛虎-鹏越“工业控制系统安全运维师(CIIP-I)”培训开始报名了!

长按下方二维码关注我们!

点击阅读原文了解更多

亲爱的读者们,感谢您花时间阅读本文。如果您对本文有任何疑问或建议,请随时联系我。我非常乐意与您交流。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。