【Linux云计算架构:第三阶段-Linux高级运维架构】第19章——安装Kali黑客操作系统-利用ettercap实施中间人攻击

内容:
19.1 安装Kali黑客操作系统及相关实战
19.2 实战:linux之kali系统ssh服务开启
19.3 实战: kali下的nmap扫描工具
19.4 MITM中间人攻击理论
19.5 实战:使用 Ettercap 工具实现中间人攻击

19.1 Kali概述:

Kali 一为linux操作系统的一个发行版。

Kali Linux 前身是 BackTrack(基于ubuntu),是一个基于 Debian 的 Linux 发行版,包含很多安全和取证方面的相关工具。支持ARM架构。

手机的CPU  :ARM架构。  PC或PC服务器: x86 _i686(32位CPU),x86_64(64位CPU) 

Kali官方网站:

https://www.kali.org/

在这里插入图片描述

19.1.1 下载镜像:
在这里插入图片描述
https://www.kali.org/downloads/

在这里插入图片描述

19.1.2 安装kali系统

在这里插入图片描述
在这里插入图片描述

分区:
在这里插入图片描述
在这里插入图片描述

需要联网,需要配置apt-get 源
安装软件包方式不一样:

kali   使用  apt-get命令来安装软件  
RHEL/centos  : rpm  或 yum 

例:kali / ubuntu下apt-get 命令参数

常用的APT命令参数
apt-cache search package 		搜索包
apt-cache show package 		获取包的相关信息,如说明、大小、版本等
sudo apt-get install package 		安装包
sudo apt-get remove package 		删除包
sudo apt-get update 		更新源
sudo apt-get upgrade 		更新已安装的包
sudo apt-get dist-upgrade 		升级系统

其中:

1 有SUDO的表示需要管理员特权!
2 在UBUNTU中命令后面参数为短参数是用“-”引出,长参数用“--”引出
3 命令帮助信息可用man 命令的方式查看或者命令 -H(--help)方式查看
4 在MAN命令中需要退出命令帮助请按“q”键!!

实例: 配置静态IP地址

配置IP方式有两种:
1、通过命令直接配置

ifconfig eth0 IP地址
route add default gw 网关------------添加默认路由
vi /etc/resolv.conf 配置文件 添加nameserver DNS----配置DNS
但是方式只能临时修改,当服务器重启后,配置信息丢失

例:

root@localhost:~# ifconfig eth0  192.168.1.63
root@localhost:~# route add default gw 192.168.1.1

2、直接修改配置文件

Ubuntu 系统配置文件在:/etc/network/interfaces

编辑配置文件:
vim  /etc/network/interfaces
并用下面的行来替换有关eth0的行:
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.64
gateway 192.168.1.1
netmask 255.255.255.0

/etc/init.d/networking restart--重启网卡;使之配置生效
配置IP地址后,需要配置DNS;具体方式如下;
vim /etc/resolv.conf  
search chotim.com
nameserver  8.8.8.8
/etc/init.d/networking restart--重启网卡服务即可

19.2 实战:linux之kali系统ssh服务开启

默认情况下,kali系统ssh服务没有开启.
具体按如下操作进行设置:

19.2.1 修改sshd_config文件,命令为:vi /etc/ssh/sshd_config

改:56 #PasswordAuthenticati

为:PasswordAuthentication yes

在:32 #PermitRootLogin without-password  之后
插入:
PermitRootLogin yes

19.2.2 启动SSH服务,

/etc/init.d/ssh start 
或者
service ssh start
root@localhost:~# systemctl restart ssh

19.2.3 验证SSH服务状态,命令为:/etc/init.d/ssh status

测试:

在这里插入图片描述

19.3 实战: kali下的nmap扫描工具

19.3.1 nmap 命令:
nmap是一个网络探测和安全扫描程序,系统管理者和个人可以使用这个软件扫描大型的网络,获取那台主机正在运行以及提供什么服务等信息。

nmap :
支持很多扫描技术,例如:UDP、TCP connect()、TCP SYN(半开扫描)、ftp代理(bounce攻击)、
反向标志、ICMP、FIN、ACK扫描、圣诞树(Xmas Tree)、SYN扫描和null扫描。可以探测操作系统类型。

名称:

nmap-网络探测和安全扫描工具

安装:
在这里插入图片描述
在centos7上安装namp方法:

[root@xuegod63 Desktop]# rpm -ivh /mnt/Packages/nmap-5.21-4.el7.x86_64.rpm

19.3.2 语法:

nmap [Scan Type(s)] [Options]

例:nmap 被扫描的IP地址

[root@xuegod63 ~]# nmap 192.168.1.63
Starting Nmap 5.21 ( http://nmap.org ) at 2015-08-16 20:38 CST
Nmap scan report for xuegod63.cn (192.168.1.63)
Host is up (0.000029s latency).
Not shown: 998 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh

19.3.3 查看扫描后的详细信息:
例: 扫描一台机器查看,它打开的端口
参数 -v : 查看详细信息

[root@xuegod63 ~]# nmap -v 192.168.1.63
Starting Nmap 5.21 ( http://nmap.org ) at 2014-12-30 20:50 CST
Initiating ARP Ping Scan at 20:50
Scanning xuegod64.cn (192.168.1.64) [1 port]
Completed ARP Ping Scan at 20:50, 0.04s elapsed (1 total hosts)
Initiating SYN Stealth (隐身)Scan at 20:50
Scanning xuegod64.cn (192.168.1.64) [1000 ports]  #对xuegod64,1000个端口进行扫描
Discovered open port 111/tcp on 192.168.1.64
Discovered open port 22/tcp on 192.168.1.64
Completed SYN Stealth Scan at 20:50, 1.30s elapsed (1000 total ports)
Nmap scan report for xuegod64.cn (192.168.1.64)
Host is up (0.00054s latency).
Not shown: 998 closed ports
PORT    STATE SERVICE
22/tcp  open  ssh
111/tcp open  rpcbind
MAC Address: 00:0C:29:48:80:95 (VMware) 
 

19.3.4 扫描一个范围: 端口1-65535

[root@xuegod63 ~]# nmap  -p 1-65535 192.168.1.63
Starting Nmap 5.21 ( http://nmap.org ) at 2015-11-09 21:46 CST
Nmap scan report for xuegod64.cn (192.168.1.64)
Host is up (0.00042s latency).
Not shown: 65531 closed ports
PORT      STATE SERVICE
111/tcp   open  rpcbind
997/tcp   open  maitrd
5672/tcp  open  amqp
53095/tcp open  unknown
MAC Address: 00:0C:29:48:80:95 (VMware)

正常情况,只能开我们需要开的服务,关闭不需要开的服务:
现在关闭不需要开的服务:有两种方法

情景1:你认识这个服务,直接关服务

[root@xuegod64 ~]# /etc/init.d/rpcbind stop

情景2:服务器这一招主要用找黑客的后门和进程的

不认识这个服务,查看哪个进程使用了这个端口,这个进程的路径,然后kill进程,删除文件
[root@xuegod64 init.d]# lsof -i :53095  
COMMAND    PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
rpc.statd 1781 rpcuser    9u  IPv4  10770      0t0  TCP *:53095 (LISTEN)
[root@xuegod64 init.d]# ls *rpc.statd*  #找不到对应的服务

通ps命令查找对应的进程文件:

[root@xuegod63 init.d]# ps -axu | grep 1781
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
rpcuser   1781  0.0  0.1  23200  1208 ?        Ss   20:20   0:00 rpc.statd #没有看到此命令的具体执行路径,说明rpc.statd可以bash终端下直接执行。接下来通过which和rpm -qf来查看命令的来源,如下:

[root@xuegod63 init.d]# which rpc.statd 
/sbin/rpc.statd

[root@xuegod63 init.d]# rpm -qf /sbin/rpc.statd 
nfs-utils-1.2.3-15.el6.x86_64   #发现rpc.statd是nfs服务相关进程,说明不是木马程序
注: rpc.statd 命令会启动 statd 后台程序。 在 NFS 环境中 statd daemon 与 lockd daemon 相结合,为锁机制提供 crash 和 recovery 功能。

解决:

[root@xuegod64 init.d]# kill -9 1781

19.3.5 扫描一台机器:查看此服务器开放的端口号和操作系统类型。

[root@xuegod63 ~]# nmap -sS -O www.xuegod.cn
Starting Nmap 5.21 ( http://nmap.org ) at 2014-12-30 21:04 CST
Nmap scan report for www.xuegod.cn (112.124.185.97)
Host is up (0.044s latency).
Not shown: 996 filtered ports
PORT     STATE  SERVICE
21/tcp    open    ftp
80/tcp    open    http
443/tcp   closed  https
3306/tcp  open   mysql
Aggressive OS guesses: Linux 2.6.28 (93%), Linux 2.6.9 - 2.6.27 (93%), Riverbed Steelhead 200 proxy server (93%), Linux 2.6.9 (93%), Linux 2.6.30 (92%), Linux 2.6.9 (CentOS 4.4) (92%), Linux 2.6.11 (90%), Linux 2.6.18 (CentOS 5.1, x86) (89%), FreeBSD 6.2-RELEASE (89%), Linux 2.6.18 (89%)
No exact OS matches for host (test conditions non-ideal).

OS detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 10.45 seconds

参数说明:

-sS:半开扫描(half-open)
TCP同步扫描(TCP SYN):因为不必全部打开一个TCP连接,所以这项技术通常称为半开扫描(half-open)。
你可以发出一个TCP同步包(SYN),然后等待回应。如果对方返回SYN|ACK(响应)包就表示目标端口正在监听;
如果返回RST数据包,就表示目标端口没有监听程序;
如果收到一个SYN|ACK包,源主机就会马上发出一个RST(复位)数据包断开和目标主机的连接,
这实际上由我们的操作系统内核自动完成的。

总结:就是tcp三次握手,少发最一个ACK包。

在这里插入图片描述

-O: 显示出操作系统的类型。 每一种操作系统都有一个指纹。 fingerprinting.

测试自己的电脑:

[root@xuegod63 ~]# nmap -sS -O 192.168.1
。。。
Running: Microsoft Windows Vista

例1:#扫描一个网段,中所有机器是什么类型的操作系统。

[root@xuegod63 ~]# nmap  -sS -O 192.168.0.0/24  

例2: 查找一些有特点的IP地址中,开启80端口的服务器。

[root@xuegod63 Desktop]# nmap  -v -p 80 192.168.1.64-67

例3:如何更隐藏的去扫描,频繁扫描会被屏蔽或者锁定IP地址。

--randomize_hosts  # 随机扫描
--scan-delay  #延时扫描,单位秒

实例1:随机扫描

[root@xuegod63 ~]# nmap -v --randomize_hosts -p 80 192.168.1.64-69
Nmap scan report for 192.168.1.69 [host down]
Nmap scan report for 192.168.1.68 [host down]
Nmap scan report for 192.168.1.67 [host down]
Nmap scan report for 192.168.1.65 [host down]
Nmap scan report for 192.168.1.66 [host down]

实例2:随机扫描+延时扫描 ,默认单位秒

[root@xuegod63 ~]# nmap -v --randomize_hosts --scan-delay 3000 -p 80 192.168.1.64-69

例4:使用通配符指定IP地址

[root@xuegod63 ~]# nmap -v --randomize_hosts --scan-delay 30 -p 80 1.*.2.3-8

19.4 MITM中间人攻击理论

19.4.1 中间人攻击理论
中间人攻击(Man in the Middle Attack,简称“MITM 攻击”)是一种间接的入侵攻击。
通过各种技术手段,将入侵者控制的一台计算机,放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。

常见攻击手段:

1、攻击者只要将网卡设为混杂模式,伪装成代理服务器监听特定的流量就可以实现攻击,这是因为很多通信协议都是以明文来进行传输的,
如HTTP、FTP、Telnet等。随着交换机代替集线器,简单的嗅探攻击已经不能成功,必须先进行ARP欺骗才行。

2、SMB会话劫持
3、DNS欺骗
4、 为 HTTPS 提供假证书
以上攻击都是典型的MITM攻击。简而言之,所谓的MITM攻击就是通过拦截正常的网络通信数据,并进行数据篡改和嗅探,而通信的双方却毫不知情。

19.4.2 ARP欺骗原理
ARP协议概述:

ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。
计算机通过ARP协议将IP地址转换成MAC地址。

ARP协议工作原理:
在以太网中,数据传输的目标地址是MAC地址,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址
计算机使用者通常只知道目标机器的IP信息,“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。
简单地说,ARP协议主要负责将局域网中的32位的IP地址转换为对应的48位物理地址,即网卡的MAC地址,保障通信顺利尽心。

apr工作原理如下:
在这里插入图片描述
在这里插入图片描述
以上是ARP正常通讯过程,下面是ARP欺骗过程:
ARP欺骗概述:

1、每个主机都用一个ARP高速缓存存放最近IP地址到MAC地址之间的映射记录。
2、默认情况下,ARP从缓存中读取IP-MAC条目,缓存中的IP-MAC条目是根据ARP响应包动态变化的。
3、要网络上有ARP响应包发送到本机,即会更新ARP高速缓存中的IP-MAC条目。
4、攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,完成ARP欺骗。

ARP欺骗具体流程如下:
1、正常情况:主机xuegod63上保存着xuegod62的IP和MAC对应关系表
在这里插入图片描述

2、xuegod64恶意给63发一个ARP应答包,来刷新63上ARP缓存表。 让63上缓存的MAC地址变为64的MAC
在这里插入图片描述

3、情景1:xuegod63发给62的数据,最终都发给了xuegod64,而xuegod64还可以把数据传给62。 实现中间人攻击

在这里插入图片描述
4、情况2:ARP欺骗–冒充网关,实现中间人攻击
在这里插入图片描述

怎样防范ARP欺骗

1、在主机绑定网关MAC与IP地址为静态(默认为动态),命令:arp -s 网关IP 网关MAC
2、在网关绑定主机MAC与IP地址
3、使用ARP防火墙

19.5 实战-使用 Ettercap 工具实现中间人攻击

实验主机

xuegod 64 192.168.1.64
xuegod63 192.168.1.63
kali-Linux 192.168.192.159

实战1: 在局域网中,通过Ettercap抓取vsftp服务器的用户名和密码
在这里插入图片描述
19.5.1 xuegod64 安装ftp服务

在这里插入图片描述

添加一个系统用户:kill 密码: 123456 用于后期登录ftp

[root@xuegod63 ~]# useradd kill
[root@xuegod63 ~]# echo 123456 | passwd --stdin kill

19.5.1 xuegod63安装ftp客户端工具

在这里插入图片描述
19.5.2 kali-linux 配置
1、初始化ettercap
在这里插入图片描述

2、选择Sniff 抓包. 嗅探
在这里插入图片描述
3、开始抓包。
unified ['ju:nɪfaɪd] 统一
在这里插入图片描述
4、选择网卡
在这里插入图片描述
5、选择主机 开始扫描主机

在这里插入图片描述
6、生成主机列表
在这里插入图片描述
7、点开主机列表
在这里插入图片描述

8、查看被扫描的主机
在这里插入图片描述
9、在xuegod63上登录xuegod64的ftp服务器。

[root@xuegod63 ~]# ftp 192.18.1.64
Connected to 192.18.1.62 (192.18.1.62).
220 (vsFTPd 2.2.2)
Name (192.18.1.62:root): Kill  #这个名字可以随意写
331 Please specify the password.
Password:123456
530 Login incorrect.
Login failed.
ftp>
此时,当登录 192.168.1.64 主机kill和123456相关的敏感信息将会被传递给攻击者。

19.5.6 登录kali查看:
在这里插入图片描述
从该界面可以看到,有用户登录 192.168.1.64 主机的 FTP 服务器了。
其用户名为 kill,密码为 123456。

19.5.7 获取这些信息后停止嗅探,在菜单栏中依次单击 Start|Stop
在这里插入图片描述
停止嗅探后,还需要停止中间人攻击。在菜单栏中依次单击 Mitm|Stop mitm
attack(s)命令。
在这里插入图片描述
在这里插入图片描述

扩展:
手机app 使用http协议 加密了吗? 没有 这样用户名和密码 可以在局域网中被抓到
解决方法:

所有手机app 软件通信都应该使用https协议

总结:
19.1 安装Kali黑客操作系统及相关实战
19.2 实战:linux之kali系统ssh服务开启
19.3 实战: kali下的nmap扫描工具
19.4 MITM中间人攻击理论
19.5 实战-使用 Ettercap 工具实现中间人攻击

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值