文章总结: 文档介绍了一种基于Node.js与ExcelJS构建登录日志系统的方法,旨在实时记录用户登录信息并生成Excel报表。内容涵盖技术选型、架构设计及核心功能实现,如获取真实IP、Excel样式处理与追加写入等,并提供了完整的工作流程与实现效果图。该方案有助于安全审计与日志管理,适合安全开发人员参考。 综合评分: 70 文章分类: 安全开发,安全工具,安全建设,解决方案
构建登录日志系统:Node.js + ExcelJS
原创
Komorebi Komorebi
Tide安全团队
2026年3月12日 17:04 山东
声明:Tide安全团队原创文章,转载请声明出处!文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途给予盈利等目的,否则后果自行承担!
0x01 前言
这是一个可以用来记录登录日志的系统,文章主要用来记录一下大体的实现思路。
0x02 项目效果
登录日志的功能可以实时记录所有用户的登录信息,包括输入的用户名、密码、来源IP及登录时间;同时后台将日志保存为Excel格式,便于相关人员查看和分析。
0x03 前期的技术选择与架构设计
Node.js+Express.js:作为后端服务,Node.js的事件驱动、非阻塞I/O特性还是比较适合处理大量的并发登录请求的。 ExcelJS:替代了有问题的xlsx库,提供了更稳定、功能更丰富的Excel文件处理能力。 原生前端技术:使用HTML/CSS/JavaScript 构建界面,避免了框架依赖,同时也提高了系统的稳定性和加载速度。
架构设计
系统主要通过三个主要组件来实现功能
- 后端服务器 (server.js)-提供API接口和Excel文件处理
- 登录页面-模拟真实的企业登录界面
- 日志查看器 (logs-viewer.html)-提供日志管理和查看功能
0x04 核心功能实现
对于整个项目的实现思想来说,重要的核心功能之一就是如何实现准确获取来源IP。
自动获取用户的真实IP地址
使用Express.js的trust proxy配置,让Express信任代理服务器转发的请求头。同时确保IP格式的一致性。
生成美观易懂的Excel表格
考虑到登录信息可能并发量比较大,那么就要求我们的生成表格功能要实现自动创建、更新和管理Excel格式的登录日志文件,而且支持追加新记录和保持现有数据。
这里我刚开始时用的xlsx库,但是后来实测发现总是出现各种问题,后来使用ExcelJS库替代有问题的xlsx库,并且实现了自动创建表头和样式(粗体、背景色),而且支持文件追加模式,不覆盖现有数据,同时具备完整的错误处理和日志记录。
集成前端日志记录
在登录页面中无缝集成日志记录功能,每次用户登录时都会自动发送日志数据。
完整的日志管理界面
这个界面可以提供Web界面的日志查看器,支持文件列表、内容预览、下载等功能。
0x05 系统工作流程
1、用户登录流程
用户输入账号密码 → 前端记录日志 → 发送到后端API → 获取真实IP → 写入Excel文件 → 返回成功响应
2、登录日志的记录与管理流程
管理员访问查看器 → 获取文件列表 → 选择文件查看内容 → 下载或预览日志数据
0x06 实现效果
整个项目的实现思路以及准备就如前文所述,接下来咱们启动一下看看具体效果。
- 前端登录页面:
- 后台输出的请求日志记录
- 前端请求日志查看
- 导出的Excel表格及打开效果
0x06 获取方式
如果有想进一步了解使用的小伙伴,请关注Tide安全团队公众号,发送登录日志系统,获取源码哦。
往期推荐
TscanPlus-一款红队自动化工具
潮影在线免杀平台上线了
自动化渗透测试工具开发实践
【红蓝对抗】利用CS进行内网横向
一个Go版(更强大)的TideFinger
SRC资产导航监测平台Tsrc上线了
新潮信息-Tide安全团队2022年度总结
记一次实战攻防(打点-Edr-内网-横向-Vcenter)
E
N
D
Tide团队产品及服务
团队自研平台:潮汐在线指纹识别平台 | 潮听漏洞情报平台 | 潮巡资产管理与威胁监测平台 | 潮汐网络空间资产测绘 | 潮声漏洞检测平台 | 在线免杀平台 | CTF练习平台 | 物联网固件检测平台 | SRC资产监控平台 | ……
技术分享方向:Web安全 | 红蓝对抗 | 移动安全 | 应急响应 | 工控安全 | 物联网安全 | 密码学 | 人工智能 | ctf 等方面的沟通及分享
团队知识wiki:红蓝对抗 | 漏洞武器库 | 远控免杀 | 移动安全 | 物联网安全 | 代码审计 | CTF | 工控安全 | 应急响应 | 人工智能 | 密码学 | CobaltStrike | 安全测试用例 | ……
团队网盘资料:安全法律法规 | 安全认证资料 | 代码审计 | 渗透安全工具 | 工控安全工具 | 移动安全工具 | 物联网安全 | 其它安全文库合辑 | ……
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:Tide安全团队 Komorebi Komorebi《构建登录日志系统:Node.js + ExcelJS》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论