2022年5月,正式认识了网安这个行业,而此时的我已经34岁了,有自己的本职工作,出于浓厚的兴趣,上班之余开始了我的网安学习之路。
一、我的学习渠道:
1、花钱报班
报的哪个教育机构就不说了,现成的资料、渗透工具和网络视频教程学习起来方便,肯定比盲目的自学省下很多时间,或许网络课程不能涉及敏感技术,所以干货太少……
2、免费渠道
B站、csdn、微步在线、Github、qq群、微信群和公众号、吾爱破解、鱼C ……
二、我学习了哪些?有没有用?
(一)网络基础
1、各种网络协议
听说很重要,所以我还是认真地学习了osi七层协议、 tcp、 udp、 arp、http/https、 ip、 dns、 dhcp、 url、 ssh
==> 混了个脸熟,几个月后的现在忘记的差不多了,因为没有学到底层代码,又不会自制工具,似乎理解不了这些协议的内涵……
(二)计算机基础
1、端口
开放的端口一般有对应的攻击方向,例如:
端口号 |
端口说明 |
攻击方向 |
21/22 |
FTP/SFTP文件传输协议 |
允许匿名上传下载爆破嗅探 |
139 |
Samba服务MS12-020 |
爆破、未授权访问、远程代码 |
22 |
SSH远程连接 |
爆破、SSH隧道及内网代理转发、文件传输 |
3389 |
RDP远程桌面连接 |
爆破 |
80/443/8080 |
常见的web服务端口 80:apache,nginx |
Web攻击、爆破、对应服务器版本漏洞 |
3306 |
MySQL |
注入、提权、爆破 |
==> 端口还是很有用的,现在是习惯性的扫描主机开放了哪些端口,然后拿着学到的方法干一轮,说真的除了win7的ms17-010(开放135、445),其他的没干进去过,现在都是win10、 win11、 server2016等最新版本的,防火墙默认开启,共享远程默认关闭,这些学到的鸡肋攻击方法显得苍白无力……
2、操作系统
用户权限、注册表、组策略、计划任务、服务、系统日志、环境变量、进程、防火墙……
==> 这些常用的配置必须得会,而且比较简单
3、系统命令
1)windows系统
dos命令、powersehll命令
2)linux系统
linux命令、shell命令
==> 命令没啥可说的,常用的必须记住,其他难记的做好笔记随时复制粘贴。后面其实还有Metasploit framework(简称“MSF”)的meterpreter命令、Clbalt Strike(简称“CS”)的beacon命令……
(三)信息收集
1)ip、域名信息收集
2)端口、漏洞信息收集
3)CMS、CDN、WAF指纹识别
4)网站目录收集
5)内网资产信息收集
6)社工信息收集
……
==> 你有多大的功力就能搜集到多少有用的东西,这似乎没啥可说的……
(四)web渗透
1、经典漏洞:
例如XSS、XXE、CSRF、SSRF、JWT、SOL注入、Redis未授权访问漏洞、文件上传漏洞、逻辑漏洞、反序列化渗透、远程代码执行、密码暴利破解、CVE漏洞
==> 经典漏洞可以了解下,毕竟刚开始学总要学点啥内容,这些我都看了,但你要用这些方法去干web渗透,很抱歉我保证99.99%的网站你都干不进去……
(五)内网渗透
1、shell反弹
我相信初学者都跟我一样,用msf和cs生成一个木马文件,放到靶机上点一下(杀软添加信任前提下),真神奇反弹回来了,然后就可以开始一系列的后渗透骚操作了,这时才发现hack这么可怕,手机电脑的所有隐私、文件hack都可以为所欲为,学到这里才觉得有点意思了,因为这个远控真的很好玩,可以打开靶机摄像头、读写文件、监视桌面……
==> 我也清楚msf和cs,以及中国蚁剑等,这些远控工具仅仅只是个玩具,高手或者顶级的红队看都懒得看一眼这些工具,可是我们初学者又能怎么办呢?自己不会开发工具,又没有高手给你牛逼的工具。即使我有,那我也不能暴露出来,毕竟好东西谁愿意无私的分享……这玩意不比其他东西,容易见光死,比如msf、cs的马儿都被微软、av研究几万遍了吧……
2、免杀
1)msfvenom编码免杀
2)加壳改壳免杀
3)签名免杀
4)修改特征码、花指令、白加黑、shellcode加载器
==> 不会免杀寸步难行,但免杀偏偏又是那么难,作为初学者我只会1-3项的方法,msfvenom编码免杀+加壳改壳免杀+签名免杀三管齐下,勉强可以过360、火绒的静态和动态查杀,玩几天之后云查杀会记住行为特征然后不免杀了……
我真的很想学会免杀,但真的是太难了,搞了好多资料,都是代码,是真的看不懂啊!要懂二进制、汇编、c语言、逆向、路漫漫其修远兮……
3、windows提权
1)windows溢出提权
2)path提权
3)注册表提权
4)计划任务、服务、启动项、组策略提权
5)msf-bypassuac模块提权
6)UAC提权(dll/com/令牌)
7)CVE漏洞提权
==> 远控之后,从普通用户提权到administrator再到system权限,win10以前的系统还是比较容易的,会了这些方法后一个一个试吧,我就是这么干的,cs我有梼杌和欧拉提权插件,不能说非常实用,但集成了那么多功能还真是很方便的……
4、权限维持
1)Windows权限维持
启动项维持
计划任务维持
系统服务维持
注册表维持
2)linux权限维持
计划任务维持
公私钥维持
SUID维持
PAM软连接维持
特权账号维持
==> 好不容易远控了一台机器,还没来得及多看看就掉线了,那会很尴尬的,所以权限维持有多重要可想而知,上述方法过于基础和普遍,我都试过了,有些还是能维持一周的,好用的方法太难,比如hook技术,我也不会,初学的你也不一定会……
5、密码抓取
1)NTML和LM哈希
2)Kerberos协议
3)票据利用(钻石票据、黄金票据、白银票据)
4)Mimikatz在线读取sam和lsass获取密码
5)使用Hashcat和在线工具破解NTLM Hash
6)浏览器、数据库、hash等其他密码的抓取
7)Windows RDP凭证的抓取和密码破解
==> 远控之后抓hash还是比较容易的,抓明文密码那肯定是老旧系统。密码字典、密码喷洒、密码暴力破解感觉不好玩,成功率不高……
6、内网横向移动
1)ipc配合计划任务、系统服务横向移动
2)密码喷洒攻击横向移动
3)PTH哈希传递
4)PTK密匙传递
5)PTT票据传递
6)wmic、smb、DCOM、WinRM远程执行命令
7)向日葵、GoToHTTP、Todesk远控工具横向移动
==> 远控一台机器后,拿不下域控、也横向不动,会没有成就感的,但是横向真的不容易,至今我还没找到很好的方法,上述方法都试过,只想说垃圾……
7、隧道技术
1)Netcat正向、反向反弹Shell
2)Netcat配合Bash反弹shell
3)Netcat配合Python反弹Shell
4)LCX端口转发
5)earthworm进行socks代理,windows用proxifier连接,linux用proxychains连接,即可访问内网
==> 说真的内网是我最喜欢的,也是学得最认真的,就目前而言的认知,内网无非就是在学习先进的方法,目前学习了很多方法,但真的很鸡肋。我想学一个通用的实战的方法,不知道有木有?
学内网渗透如果不搞几台手机电脑,那我觉得是白学了,即使是出于好奇心?不然呢……
(六)渗透工具
1、burp suite:web渗透出镜率很高网站扫描、抓包工具
2、awvs:网站扫描工具,鸡肋
3、Nessus:网站扫描工具,鸡肋
4、dirsearch:网站目录后台扫描工具
5、nmap:端口漏洞扫描工具,很常用,但动静很大
6、sqlmap:sql自动注入工具,鸡肋
7、WireShark:流量分析工具
8、mimikatz:密码抓取工具
9、SigThief-master:免杀签名工具
10、OllyDbg:调试工具
11、C32Asm:反编译工具
12、UPX、VMProtect:加壳工具
13、crunch:字典工具
14、SunloginClient、GotoHTTP、todesk、redesktop:远程桌面工具
……
==> 工具太多了,包括kali集成的各种工具,不一一列举了,玩了很多工具,只能说都比较鸡肋……学着学着就发现了,搞渗透真的是麻烦,没点兴趣真的是坚持不下去,要学的东西太多,即使感觉学了很多了,还是没法实战……
(七)语言方面
1、PHP语言
web渗透如果不懂php,那你肯定是个水货,当然我只是简单地学习了下php、html,架个小皮面板phpstudy_pro还挺有意思的,原来网站是这么来的……
2、汇编
最底层语言不用介绍了吧,装了个DOSBox,跟着课程敲了敲,学了10多天吧,很枯燥,讲的基础都能听懂,深入的课程没找到我也没听,到现在只记得一些寄存器、汇编指令,离运用还差十万八千里……
3、c语言
我知道要成为高手必须得精通一门底层一点的语言,c/c++是很好的选择,语言方面我似乎没啥天赋,装了个CLion 2021.1.3按部就班的学,做不到举一反三,能听懂但很容易忘……
4、python
学这个完全是因为听说这门语言简单,学习了几天确实简单很多,装了个PyCharm Community Edition 2022.3目前正在重点学习这个python……
==> 目前就走马观花的把上述四种语言学了下,照着视频上机械式的敲一敲,完全不会运用,接下来学习c语言、python将是我的重中之重,至少要学到能自己开发工具、写免杀木马脚本的水平……