网络故障(network failure)是指由于硬件的问题、软件的漏洞、病毒的侵入等引起网络无法提供正常服务或降低服务质量的状态。 摘要:本文主要用于通过路由器的wan端口登录到帐户以连接到校园网络(Web身份验证)。连接到路由器的多个设备共享同一帐户。几分钟后,将检测到代理(或共享)行为,并且该帐户将成为“临时禁止发布”。同时,实现了自动Web身份验证,因此无需登录。 前言 Wikipedia openwrt简介: OpenWrt是适用于嵌入式设备的Linux发行版。 与原始固件相比,OpenWrt不是单个一、静态固件,而是提供了可向其中添加软件包的可写文件系统。这使用户可以自由选择应用程序和配置,而不受设备提供商的限制,并且可以使用适合某些应用程序的软件包来自定义您的设备。对于开发人员来说,OpenWrt是一个框架。开发人员不必费心构建整个固件即可获得所需的应用程序;对于用户而言,这意味着能够以不同于以往的方式完全自定义和使用该设备,OPKG包含3500多种软件。 默认情况下,LuCI用作Web交互界面。 设备:已闪入openwrt系统的路由器 (作者使用Barley DW220D) 固件版本:OpenWrt屏障断路器14.07 / LuCI中继(0.12 + svn-r10530) 内核版本:3.1 0.49 涉及的内容: JavaScript分析后程序包构建/发送基本的Linux命令外壳脚本 背景/原理:使用路由器的wan端口连接到园区网络时,终端对园区网络服务器是透明的(NAT地址转换),并且用户连接几分钟后,园区网络服务器将对其进行分析。到Internet(SWU为20分钟)数据包用于检测是否有多个设备共享该行为,因此它仅需要每十分钟断开/连接到Internet。实际上,Supermartin就是基于这一原理开发的,用于Windows环境的自动联网工具(破解重庆电信园区网络,在宿舍中共享宽带帐户),但是当宿舍计算机使用时,其功耗是不可接受的。开启了很长时间。归根结底,校园网络的Web身份验证是发送http应用程序层协议数据包(最常见的是post和get),因此这些步骤大致分为两个步骤: 分析登录/脱机数据包并在openwrt上发送数据包以进行认证/脱机一、分析Web认证数据包 可以通过数据包捕获和分析页面JavaScript来进行数据包分析。打开浏览器开发人员工具(F12)进行网络登录,然后通过敏感的气味找到关键的发布包,如图1所示。 可以看出,尽管userid和password关键字的内容是明确的(未加密),但queryString和服务的外观和内容还是不清楚的。应该结合使用JS来分析queryString和服务的结构和内涵。再次打开开发人员工具,html代码如图所示找到登录按钮,并发现登录按钮已绑定到doauthen()函数,如图2. 所示。 我发现此页面引入了两个js文件,并在其中一个js文件中找到了登录功能: 其中ePortalUrl是请求地址前缀:
和离线功能:
可以发现有更多的登录关键字可以登录,但离线只需要一个userIndex 1.1个登录关键字querryString和Service 在JS文件中发现,queryString是上一页提交的get数据,经过两次encodeURIComponent()转码后,如图3所示 JavaScript encodeURLComponent()的含义是替换原始字符串的某些特殊字符(有关详细信息,请参见encodeURLComponen的含义。) 与%25E9%25BB%2598%25E8%25AE%25A4相对应的服务是图3的可选下拉框中默认单词的两个encodeURLComponent()转码。这是相对固定的,因此请查找获取queryString的数据源。 输入身份验证地址且未登录身份验证页面时,地址栏将变为
获取数据是“?”之后的部分
这意味着浏览器在此之前进行了跳转,并执行了get操作。如果您尚未登录,则可以在尚未重定向的页面上找到此信息。实际上,该信息是该设备未登录以连接到服务器,服务器返回的注册信息。获取此页面的方法有很多(必须处于未登录状态),例如: 禁用浏览器加载js脚本,使用python和其他编程语言直接捕获软件包并使用wget在linux上下载页面 wget在openwrt下获得的页面如图4所示。 此时,登录所需的四个关键字id,password,service和queryString都已清除。您只需要构造一个POST包并将这些关键字发送到图1中的请求URL即可完成登录。 1.2个离线关键字userindex 首先,我使用python根据1.1的背景发送post包,并发现直接返回了userindex,如图5所示 因此,您只需执行字符串操作即可获取userindex关键字。 两个openwrt循环执行登录/脱机操作2. 1openwrt发送帖子包和shell基础 卷曲后操作命令格式:
openwrt上的shell是轻量级的解析器灰。语法不严格。具有一定编程基础的人们可以快速学习和应用它。有关详细信息,请参见shell教程。 (该网站的免费内容就足够了) 2. 2连接到openwrt 使用计算机直接插入路由器的局域网端口,使用腻子,Xshell和其他工具进行SSH连接(某些版本需要进入路由器设置页面以打开接收局域网端口SSH连接),地址为路由器管理地址,一般为19 2. 168.1.1,输入root用户名和密码即可进入路由器。 2. 3编写一个shell脚本,输入etc(cd / etc),创建一个新的net.sh文件(触摸net.sh),然后写入net.sh文件(vi net.sh,键入i以进入编辑模式)(请操作vi请参见linux vi)以下代码:
vi保存的操作顺序为ESC:wq输入 2. 4执行脚本 在执行Linux脚本之前需要授权。授权命令为:
执行脚本:
可以说它已经结束了,但是可以使用SSH输入openwrt来执行脚本。退出SSH时,脚本的执行将停止。在这里,屏幕包用于使其在后台执行。使用屏幕类似于Windows窗口。可以同时执行多个窗口。执行。安装命令如下:
直接在页面上进入屏幕以进入子页面,然后在此页面上执行:
正常执行程序后,键入Ctrl + a,然后按d退出到主页。此时,您可以输入exit退出连接。 要再次进入该窗口,可以使用screen -ls获取前一个窗口的编号,然后使用screen -r number命令输入。 顺便显示openwrt SS设置方法的公开版本
当今,越来越多的业务应用运行于网络架构之上,保障网络的持续、高效、安全的运行,成为网络管理者面临的巨大挑战。 |
温馨提示:喜欢本站的话,请收藏一下本站!