如何用Python来入门黑客

如何用Python来入门黑客

本文给零基础的小白阅读,大牛如果看到有什么不对望指出




黑客也分很多领域,这里先不讲门槛较高的系统领域的安全【因为我也不会……】,讲下Web下的安全。

首先大喊一句!Python大法好!

零基础的话建议从Python这种语法简单脚本语言入门,Python入门可以看这里。

Python教程,简明 Python 教程。

好的,当你入门Python语法后你可以去阅读那些dalao们写的库,论对一个网站渗透首先应该收集他的信息,因为只有收集一个网站信息才能针对攻击。那么Python爬虫就是一大利器,利用爬虫收集一个网站的架构是非常重要的。首先是大名鼎鼎的Scrapy。scrapy/scrapy

当然这里不讲scrapy,因为我比较喜欢用Python3,有请 非转基因的 Python HTTP 库 requests!

Requests: 让 HTTP 服务人类 以及美味汤!Beautiful Soup 4.4.0 文档 ,利用Requests和Beautiful Soup可以爬到一个网站的架构,比如你想识别网站指纹信息,你可以用提取出的文档进行正则表达式匹配,尝试匹配下面Dom节点


<meta name="generator" content="Discuz! X3.3" />

又或者可以去尝试访问下网站的robots.txt,查看是否有敏感目录,或者暴露了CMS。

嗅探一个网站的IP时候可以用Ping hostname.com 这种方法,或者用nslookup hostname.com dns,不过现在大多数使用了CDN,真实IP也不是很好找了。当然这些操作可以集成到你的Python脚本里。IP找完,可以尝试找找开放了哪些端口,在Python脚本里造一个端口List,然后使用secdev/scapy进行发包 FB上有这么一篇文章很不错 [如何用Scapy写一个端口扫描器? - FreeBuf.COM | 关注黑客与极客] 最后Requests.headers里可以在响应包里找到Server名字。做完了这些你想找下网站的后台路径,又或者你找到了登入点想爆破他但苦于没有字典,看这里 rootphantomer/Blasting_dictionary Requests就可以做到,记得要用Proxies选项。

说到黑客你第一联想是什么,大概就是DDos吧【《破坏之王ddos攻击与防范深度剖析》】感觉电视报道老是有这个名词。你会使用Requests疯狂进行Sql查询请求,你会使用Scapy库进行Syn泛洪攻击,但你总感觉少了点什么。没错作为黑客掌握TCP/IP协议是非常重要的 《TCP/IP详解 卷一》, 当然我承认这本书有些枯燥,所以我们使用Wireshark配合食用,一边分析一边学习。关于那本HTTP圣经实在太厚了,以后说不准你还会当砖头敲人:) 所以我推荐了解Http协议看这本 《图解http》当然你有兴趣的话看下《CCNA学习指南》也是很好的。

关于嗅探方面其实前人早就写出了超强的工具,比如Nmap,Whatweb,知道创宇的ZoomEye也是非常厉害的工具,有兴趣可以自己找资料学习。这里要讲下为什么渗透前要收集信息,一个网站可以由很多模块组成,假如一个模块出现了漏洞,那么整个系统就会遭殃,毕竟通往权限的路不止一条[括弧笑],如果这个网站的服务器版本过老,那么你可以用网上存在的0day攻击,分分钟教他做人,其他模块同理。你甚至可以模拟一个网站的搭建环境,自己本地测试 【过多请求人家直接ban了你,你也就干瞪眼了23333】

接下来讲下OWASP几个高危问题吧,Sql注入,以前非常l普通的高危漏洞,现在基本没啥了。我认为原理在于输入点,未净化用户输入的内容,将数据以命令的方式进行执行,简单来说你就在一个输入点不停执行sql查询命令,把这个网站什么用户信息,什么密码都给倒出来。Sqlmap应该是sql注入最强大的工具了,网上有很多食用资料。Github有源码可以自己阅读,学习payload sqlmapproject/sqlmap ,看完怕不是通杀Sql注入漏洞。当然你也可以写个Python脚本自己简单检测下网站是否存在sql注入,然后用sqlmapapi进行批量执行。

XSS,关于这个需要有一定的javascript基础,推荐看 《javascript dom编程艺术》,我认为,xss也是对输入点未净化造成的,比如


<input value="你可以控制的地方" />

这个地方value是你可以控制闭合的。前提是未过滤,这样你就可以腾出来空间执行自己脚本,当然xss这玩意姿势很多,我一个菜鸟就不献丑了,推荐这里 华西安全网--wooyun漏洞报告平台搜索--乌云WooYun镜像站 作者良心啊!

长短短在Github上分享了他的xss思路图,我不知道能不能贴出来就先不贴了……

至于其他类似逻辑漏洞和路径遍历等等漏洞,一会在下面列出的书去学习吧 :)

说下工具吧,sql注入的神器 Sqlmap,收发包神器Burpsuite,

其实安装个kali linux比较方便,集成了很多安全工具,更有Metasploit大名鼎鼎的渗透框架。

嘛。linux学习肯定是必要的,当然初期我认为能使用常用命令就足够了。《鸟哥linux的私房菜》可以当字典翻阅,没事还能垫枕头,实在不行还能砸人。

当然零基础跟着一本书学习是很好主意。

重点讲了前端安全问题的大作! 《web前端黑客技术揭秘》

能够打开你的任督二脉倚天屠龙之作 《黑客攻防技术宝典 web实战篇》

能让你Python信仰加成的 《Python黑帽子》

你也许想像电影里的黑客那么炫酷的 《Metasploit渗透测试魔鬼训练营》

周末闲暇时光不如来一本 《社会工程:安全体系中的人性漏洞 》

最后一本 《黑客从入门到放弃》:-P

推荐一下Github上有助于新手的项目

We5ter/Scanners-Box

以及曾经的光芒

华西安全网--wooyun漏洞报告平台搜索--乌云WooYun镜像站

闲暇之余为什么不去FB喝杯酒呢

FreeBuf.COM | 关注黑客与极客

编辑于 2017-04-30