热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

mana中的mac地址随机化处理

mana的发展步伐一直很迅速,但是OffSec团队礼貌地请求我们把mana恢复至之前的合适版本,1.3.1-Fixy McFixface是我们在2014年10月第一个正式版本之后,推送的许多的更新之中

https://img8.php1.cn/3cdc5/1e804/978/42df1ea1a34b77f8.jpeg

mana的发展步伐一直很迅速,但是OffSec团队礼貌地请求我们把mana恢复至之前的合适版本,1.3.1-Fixy McFixface是我们在2014年10月第一个正式版本之后,推送的许多的更新之中的一个。在之前的发布页面1.3-WPE & ACLs上用很长的篇幅详细说明了更新内容,其中包括WPE扩展功能,该功能受启发于Brad Antoniewicz's从对其的破解工作。

在我们最初发布mana的时候,iOS设备已经开始使用少量探针,他们正准备使用使用随机MAC地址探针(但并未正式使用),而据我们所知,Android在当时已经修复了在低电量模式下的探针泄露漏洞 。这就是我们创建loud mode的原因。

从那时起,iOS , OSX ,部分Windows系统系统以及Android设备开始使用随机化MAC地址,用于探寻首选网络列表(PNL)之中的具体网络。当时的loud模式已经可以满足这一点,因为loud模式能够自己记录下使用随机MAC地址探寻到的ESSID,然后对这些网络进行响应,并将它们重新广播至非随机化MAC地址之上,但是这会现一些小问题—均衡性。

从原理上讲,mana在loud模式中能达到最好效果,因为它记下所有设备上的探针,并使用它们对所有设备进行回复。这意味着网络设备保存下来了,当下次再需要时就不用再重新探寻。但是这也意味着你可以对你周围所有的设备进行攻击,不过这个特性只有在你想犯法的时候才看起来吸引人。

有一条很重要的更新内容是mana开始使用MAC地址过滤(MAC ACL)。然而,这个特性只有在关联阶段有效,而且在设备发现或者尝试连接恶意网络时并不发出任何阻止操作。因而我们提供一个可将MAC ACL扩展为管理封包的选项。你可以在自己的设备上有效地将恶意AP设置为不可见状态(我不太明白为什么正常的AP不这样做)。

在这一点上,mana做得相当好,但是从数量上讲,mana可见的网络探针,尤其是从随机MAC地址发出的网络探针数目大大减少了。有时你可能需要允许某个特定厂商的所有MAC地址(例如当目标机构使用戴尔笔记本),这时显式的ACL便成为了一件麻烦事了,因为你只知道这些设备的OUI,为了解决这个问题,我们同时兼容为MAC ACL添加二进制掩码(衍生于airodump-ng的掩码功能)。我们在源码中给出了一些例子,你可以在hostapd.accpt/deny文件中添加一些自定义的规则,格式为<掩码>:

02:00:00:00:00:00 02:00:00:00:00:00

11:22:33:00:00:00 ff:ff:ff:00:00:00

aa:bb:cc:dd:ee:ff

以上例子可匹配所有随机MAC地址(将MAC地址的第一个八位第二位置为1,表示一个本地管理的MAC地址),并且可以匹配OUI为11:22:33的所有设备,以及MAC地址为aa:bb:cc:dd:ee:ff的设备。

如果以上的访问控制列表以白名单模式下,那么你便可以看到所有从随机MAC地址发出的所有网络探针,如果当前处于loud模式中,则会把这些探针重新广播至你的目标设备(而非其他设备),那么,均衡性问题便不会再影响mana的性能了。

正如我上文所介绍的,具体发布内容在GitHub上,在其中还包括了一些二进制包。


推荐阅读
  • Docker入门指南:初探容器化技术
    Docker入门指南:初探容器化技术摘要:Docker 是一个使用 Go 语言开发的开源容器平台,旨在实现应用程序的构建、分发和运行的标准化。通过将应用及其依赖打包成轻量级的容器,Docker 能够确保应用在任何环境中都能一致地运行,从而提高开发和部署的效率。本文将详细介绍 Docker 的基本概念、核心功能以及如何快速上手使用这一强大的容器化工具。 ... [详细]
  • 初探性能优化:入门指南与实践技巧
    在编程领域,常有“尚未精通编码便急于优化”的声音。为了从性能优化的角度提升代码质量,本文将带领读者初步探索性能优化的基本概念与实践技巧。即使程序看似运行良好,数据处理效率仍有待提高,通过系统学习性能优化,能够帮助开发者编写更加高效、稳定的代码。文章不仅介绍了性能优化的基础知识,还提供了实用的调优方法和工具,帮助读者在实际项目中应用这些技术。 ... [详细]
  • 作为软件工程专业的学生,我深知课堂上教师讲解速度之快,很多时候需要课后自行消化和巩固。因此,撰写这篇Java Web开发入门教程,旨在帮助初学者更好地理解和掌握基础知识。通过详细记录学习过程,希望能为更多像我一样在基础方面还有待提升的学员提供有益的参考。 ... [详细]
  • ButterKnife 是一款用于 Android 开发的注解库,主要用于简化视图和事件绑定。本文详细介绍了 ButterKnife 的基础用法,包括如何通过注解实现字段和方法的绑定,以及在实际项目中的应用示例。此外,文章还提到了截至 2016 年 4 月 29 日,ButterKnife 的最新版本为 8.0.1,为开发者提供了最新的功能和性能优化。 ... [详细]
  • iOS 设备唯一标识获取的高效解决方案与实践
    在iOS 7中,苹果公司再次禁止了对MAC地址的访问,使得开发者无法直接获取设备的物理地址。为了在开发过程中实现设备的唯一标识,苹果推荐使用Keychain服务来存储和管理唯一的标识符。此外,还可以结合其他技术手段,如UUID和广告标识符(IDFA),以确保设备的唯一性和安全性。这些方法不仅能够满足应用的需求,还能保护用户的隐私。 ... [详细]
  • 如何高效利用Hackbar插件提升网页调试效率
    通过合理利用Hackbar插件,可以显著提升网页调试的效率。本文介绍了如何获取并使用未包含收费功能的2.1.3版本,以确保在不升级到最新2.2.2版本的情况下,依然能够高效进行网页调试。此外,文章还提供了详细的使用技巧和常见问题解决方案,帮助开发者更好地掌握这一工具。 ... [详细]
  • 七款高效编辑器与笔记工具推荐:KindEditor自动换行功能解析
    本文推荐了七款高效的编辑器与笔记工具,并详细解析了KindEditor的自动换行功能。其中,轻笔记QingBiJi是一款完全免费的记事本软件,用户可以通过其简洁的界面和强大的功能轻松记录和管理日常事务。此外,该软件还支持多平台同步,确保用户在不同设备间无缝切换。 ... [详细]
  • 本文深入解析了HTML框架集(FRAMESET)的使用方法及其应用场景。首先介绍了几个关键概念,如如何通过FRAMESET标签将主视图划分为多个独立的区域,每个区域可以加载不同的HTML文件。此外,还详细探讨了FRAMESET在实际开发中的优缺点,并提供了具体的实例代码,帮助开发者更好地理解和应用这一技术。 ... [详细]
  • 在众多市场调研公司中,如何选择一家值得信赖的合作伙伴至关重要。基于我在市场调查行业近二十年的经验,我将推荐几家国内知名的市场调研机构,供您参考:1. 开元研究——专注于零售报刊发行研究、媒体广告价值评估及网络营销分析等领域,以其专业性和准确性赢得了广泛认可。 ... [详细]
  • C# .NET 4.1 版本大型信息化系统集成平台中的主从表事务处理标准示例
    在C# .NET 4.1版本的大型信息化系统集成平台中,本文详细介绍了主从表事务处理的标准示例。通过确保所有操作要么全部成功,要么全部失败,实现主表和关联子表的同步插入。主表插入时会返回当前生成的主键,该主键随后用于子表插入时的关联。以下是一个示例代码片段,展示了如何在一个数据库事务中同时添加角色和相关用户。 ... [详细]
  • DRF框架中Serializer反序列化验证机制详解:深入探讨Validators的应用与优化
    在DRF框架的反序列化验证机制中,除了基本的字段类型和长度校验外,还常常需要进行更为复杂的条件限制校验。通过引入`validators`模块,可以实现自定义校验逻辑,如唯一字段校验等。本文将详细探讨`validators`的使用方法及其优化策略,帮助开发者更好地理解和应用这一重要功能。 ... [详细]
  • 本文探讨了如何有效地构建和优化微信公众平台账号,涵盖了用户信息管理、内容创作与发布、互动策略及数据分析等方面。通过合理设置用户信息字段,如用户名、昵称、密码、真实姓名和性别等,确保账号的安全性和用户体验。同时,文章还介绍了如何利用微信公众平台的各项功能,提升用户参与度和品牌影响力。 ... [详细]
  • 本文详细介绍了如何在Java Web服务器上部署音视频服务,并提供了完整的验证流程。以AnyChat为例,这是一款跨平台的音视频解决方案,广泛应用于需要实时音视频交互的项目中。通过具体的部署步骤和测试方法,确保了音视频服务的稳定性和可靠性。 ... [详细]
  • 在Android 4.4系统中,通过使用 `Intent` 对象并设置动作 `ACTION_GET_CONTENT` 或 `ACTION_OPEN_DOCUMENT`,可以从相册中选择图片并获取其路径。具体实现时,需要为 `Intent` 添加相应的类别,并处理返回的 Uri 以提取图片的文件路径。此方法适用于需要从用户相册中选择图片的应用场景,能够确保兼容性和用户体验。 ... [详细]
  • 使用for循环构建标准等腰三角形
    通过使用 `for` 循环,可以构建一个标准的等腰三角形。具体来说,每层的星号数量为 `2*i-1`,而空格的数量则为 `(n-i)*2`,其中 `n` 是总层数,`i` 是当前层的索引。通过合理地控制星号和空格的数量,可以确保生成的三角形在视觉上是标准且对称的。例如,对于一个 4 层的等腰三角形,第一层有 1 个星号和 6 个空格,第二层有 3 个星号和 4 个空格,依此类推。这种算法不仅简单高效,而且易于实现。 ... [详细]
author-avatar
郭原雪2865
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有