杂:Web安全,Where to begin?

文章目录

    • 写在前面
    • 七月初我的水平
    • 十月初我的水平
    • 三个月中我都做了些什么
    • 不立不破
    • 从何处开始
    • 2020.04 更新

写在前面

今天是2019.10.03
特意翻了下聊天记录
距离我终于决定放弃单片机转安全已接近三个月
杂:Web安全,Where to begin?_第1张图片一开始的直觉果然是对的
至少我现在仍然觉得是对的

有点乱
不知道该写什么
暂且信马由缰
权当是对这三个月的一篇summary吧

七月初我的水平

两个字:很菜
从没有接触过Web
所有相关内容一窍不通
很迷茫
不知道从何下手

十月初我的水平

四个字:依然很菜
不过这个菜是知道了自己哪方面欠缺、应该学什么、怎样学的菜

三个月中我都做了些什么

  1. 一开始选择了实验吧作为靶场,但是对零基础的小白来说,里面的内容和天书一样,别说做题的思路了,连下面别人的评论都看不懂。
  2. 然后决定换个靶场
    攻防世界
    很感谢这个平台,基础题真的是给零基础小白的福利
    从查看源码、GET&POST、cookies到webshell,每一题我都在用心去做,涉及到的所有不懂的知识点、没见过的名词都会去百度,然后做笔记。
  3. 十二道题做完以后,我对各种Web语言、前后端的划分、HTTP和HTTPS、浏览器渲染的原理等等有了基本的认识,但是这些东西太零碎了,东一块西一块的。
  4. 然后就是配置和学Kali的各种工具,看着别人的博客照着一通敲,敲完了,结果也对了,但是几乎什么都没学到
  5. 最后终于决定搭一个服务器,自攻自防,我仍然认为这是最好的方式
    服务器运维:CentOS 7下搭建LAMP渗透环境
    此博客仍在更新中

现在写出来一看好像三个月也没有学太多东西,但至少比一开始的一脸懵好了很多

不立不破

说一下为什么选择自己搭服务器
自攻自防
道高一尺魔高一丈
既是道又是魔
合起来就高了一丈一
不立不破

怎么立

下面会讲需要学什么
为什么立

1.在立的过程中会对Web运行原理有更深的理解
纸上得来终觉浅
绝知此事要躬行

2.立好以后就知道正常用户是如何使用Web的了
在立的过程中
要时刻注意
哪个环节有可能会出问题进而导致被攻击

3.和靶场不同
你知道全部的源码
如果靶场的一道SQL注入题是服务器对空格作了过滤
那你做一百遍它也还是对空格作了过滤
但你自己的服务器可以改代码
怎么破

如果立的过程中注意到了
自然会去想怎么攻击这个点
比如你实现了一个查询的功能
在功能测试时就可以想到如果用户在查询时进行非法输入会导致什么后果
即使想不到也可以多在安全社区看看积累经验
为什么破

傻缺问题
为了吃饭

从何处开始

安利一个学习网站
菜鸟教程

《计算机网络》 推荐谢希仁第七版
HTTP和HTTPS详细理解
各类Web语言(HTML,JS,CSS,PHP等)的区别
前端后端的区别
浏览器工作原理
数据库原理和应用 推荐MySQL
虚拟机配置及使用 推荐VMWare
Apache和Tomcat的配置使用
Linux常用命令
HTML入门
PHP入门
JSP & Servlet
JS

看着不是很多,但真正想学精或者学到运用自如的地步还是需要一番功夫的
这些都差不多了的话搭服务器基本没问题了
然后说说Web安全

抓包工具 Win下Fiddler或Kali下Burp,推荐Burp
nmap
sqlmap
metasploit
...

其实有了上面搭服务器的基础后
然后需要做的就是学Kali的各种工具的用法
但和Script Kids不同的是
你知道这些工具背后的原理
甚至可以自己写脚本应对更多的实际场景
最后建议熟练掌握一门编程语言,推荐Python
没别的
Python牛逼!

2020.04 更新

又往底层研究了一下,期间投入到安全的时间少了很多,更偏重于基础了。
搞基础C语言肯定不可或缺,不过我现在没有太多时间捡C了。
最近在写一个基于机器学习的NIDS,需要研究SNORT的源码,有点体会到了底层的魅力

上面所说的内容稍稍修正一下,不仅要自己搭服务器,还要进行系统性的集中训练,比如
sqlilabs, dvwa等等等等,还是不太推崇靶场

考完之后估计会在底层投入的时间更多,主要是Linux内核,编译原理,算法等等,基础一定要扎实,这样才能走的更远。

你可能感兴趣的:(杂)