Windows网络数据流跟踪技巧

逆向思维训练:用OllyDbg与GetWindowTextA API分析软件注册验证逻辑 在软件安全与系统分析领域,理解程序内部运行机制是核心技能。其原理在于通过动态调试与静态分析,监控程序执行流与数据流,从而揭示其内部逻辑。这项技术的价值在于提升软件安全性评估、漏洞挖掘及恶意代码分析能力,广泛应用于软件安全审计、协议逆向和遗留系统维护等场景。本文以GetWindowTextA这一关键Windows API为切入点,结合OllyDbg调试器,通过追踪用户输入处理流程,详细演示如何运用逆向工程思维,像侦探一样逐步剖析一个典型CrackMe程序的注册验证算法,完成从黑盒到白盒的思维跃迁。 阅读详情
这个系列相当琐碎,想到哪里写到哪里,说不定这是第一篇也是最后一篇。同时,这
也不是正式文档,可能仅仅是某次调试过程中临时记录的内容。

这次说说跟踪445/TCP口上的数据流。445/TCP口上的很多数据流由内核态的驱动直接
处理,并不交给用户态程序,此时想通过拦截传统套接字函数跟踪数据流是没有意义
的。

假设在SoftICE中跟踪,为了使stack命令的输出更有可读性,一般加载如下符号表:

ntoskrnl.nms
tcpip.nms
netbios.nms
netbt.nms
rdbss.nms
mrxsmb.nms
srv.nms

下例表示目标IP为192.168.7.151、源IP为192.168.7.166时命中:

:bpx tcpip!TCPRcv if *(esp+8)==9707A8C0&&*(esp+c)==A607A8C0

最有意义的事实在于tcpip!TCPRcv()是Windows系统真正开始处理TCP报文的地方,因
此在tcpip!TCPRcv()入口处修改了IP数据区,将影响所有上层处理。比如mrxsmb.sys
将从tcpip.sys获得数据,如果先行在TCPRcv()处修改了SMB报文,对于mrxsmb.sys来
说,它看到的就是修改后的SMB报文。

可能你有点奇怪,为什么我没有直接根据端口进行过滤。在我的测试环境中,根据端
口进行过滤时容易死机,所以没举相应例子,但你不妨一试。

这次说说跟踪IP报文处理流程。假设在SoftICE中跟踪,为了使stack命令的输出更有
可读性,一般加载如下符号表:

ntoskrnl.nms
tcpip.nms

下例表示源IP为192.168.7.250、目标IP为192.168.7.151时命中:

:bpx tcpip!IPRcvPacket if *(*(esp+8)+c)==FA07A8C0&&*(*(esp+8)+10)==9707A8C0

最有意义的事实在于tcpip!IPRcvPacket()是Windows系统真正开始处理IP报文的地方,
因此在tcpip!IPRcvPacket()入口处修改了IP报文,将影响所有上层处理。
这次说说跟踪ICMP报文处理流程。假设在SoftICE中跟踪,为了使stack命令的输出更
有可读性,一般加载如下符号表:

ntoskrnl.nms
tcpip.nms

下例表示源IP为192.168.7.250、目标IP为192.168.7.151时命中:

:bpx tcpip!ICMPRcv if *(esp+8)==9707A8C0&&*(esp+c)==FA07A8C0

最有意义的事实在于tcpip!ICMPRcv()是Windows系统真正开始处理ICMP报文的地方,
因此在tcpip!ICMPRcv()入口处修改了ICMP报文,将影响所有上层处理。

WFP驱动开发实战:TCP数据流拦截、篡改与校验和问题深度解析 本文深入探讨了WFP驱动开发在TCP数据流拦截、篡改与校验和问题中的实战应用。通过分层拦截技术、NET_BUFFER操作和校验和解决方案,开发者可以精确控制网络流量,解决虚拟化环境中的特殊挑战。文章还提供了性能优化、调试技巧和安全实践,助力构建稳定的网络过滤驱动。 阅读详情

相关推荐

VC++与OpenCV目标跟踪系统开发实战:从环境搭建到算法优化

计算机视觉中的目标跟踪技术,旨在通过算法在连续视频帧中持续定位特定目标,其核心原理通常涉及特征提取、运动建模与外观匹配。该技术对于实现实时监控、人机交互及自动驾驶等应用具有重要价值。在工程实践中,开发高效稳定的跟踪系统常面临性能与精度的平衡挑战。本文聚焦于利用VC++运行库与OpenCV库,在Windows平台构建桌面级目标跟踪解决方案,详细阐述了从开发环境配置、核心算法选型(如KCF、CSRT跟踪器),到系统架构设计与多线程优化的完整流程,为相关领域的开发者提供了从理论到实践的参考路径。

weixin_34025151的博客 380

好工具推荐系列:Windows系统查看各个进程/网速/CPU的软件(查看系统资源工具)

★Windows自带工具:资源监视器,C:\Windows\System32\perfmon.exe 如果是Win10/Win7系统 1、 打开 Ctrl+Alt+Del【任务管理器】 2、换到【性能】标签页,点击底部文字【打开资源监视器】,即可打开资源监视器工具 如果是WinXP系统 按Win + R打开运行,输入perfmon.exe,可打开资源监视器工具 资源监视器网络查看方法:.....................

$firecat利白的代码足迹$ 1万+

【网络】Wireshark远程抓包实战:从混杂模式到精准过滤

本文详细解析了Wireshark远程抓包的核心原理与实战技巧,包括混杂模式和rpcapd服务的关键作用。通过Linux和Windows环境下的配置步骤,以及七大精准过滤技巧,帮助网络工程师高效捕获和分析远程主机流量,解决复杂网络环境中的疑难问题。

weixin_30681615的博客 422

windows网络排查命令及工具

ATKKPING、Quickping、WinMtr、pinginfoview工具介绍

Fe_smoothly的博客 3227

Windows网络数据流追踪技巧:实现目标跟踪

Windows操作系统提供了一些强大的工具和技术,可以帮助我们实现网络数据流的跟踪,并进行目标跟踪。本文将介绍一些在Windows环境下实现网络数据流跟踪和目标跟踪的技巧,并提供相应的源代码示例。Wireshark是一款开源的网络数据包分析工具,可以捕获和分析网络数据包。WinPcap是Windows平台上一款广泛使用的网络数据包捕获库,它提供了一组API可以用于网络数据包的捕获和分析。通过使用上述技巧和相应的源代码示例,我们可以在Windows环境下实现网络数据流的跟踪和目标跟踪。

ZwdvIot的博客 263

Wireshark中文使用教程:从安装到进阶技巧

Wireshark 是网络协议分析领域中的翘楚,由 Gerald Combs 在1998年首次发布,并且是开源软件。这款工具广泛应用于网络故障排查、分析、软件和协议开发及教育等领域。通过Wireshark,用户可以捕获和观察网络中的数据包,从而对网络流量进行深入的分析。其支持多种平台,如Windows、Linux和macOS,具备直观的图形用户界面(GUI),并允许用户进行详细的数据包分析,实现复杂过滤,甚至可以重构TCP会话。Wireshark 的核心功能包括:实时数据包捕获。

weixin_36296444的博客 1693

微软服务器跟踪,在 Windows 事件跟踪中跟踪事件

在 Windows 事件跟踪中跟踪事件03/30/2017本文内容EtwTracking示例演示如何在工作流服务上启用 Windows Workflow Foundation (WF) 跟踪,以及如何在 Windows (ETW 事件跟踪中发出跟踪) 。 为了将工作流跟踪记录发到 ETW 中,该示例使用 ETW 跟踪参与者 (EtwTrackingParticipant)。该示例中的工作流接收请求...

weixin_29890403的博客 584

神经元细胞结构刨析(持续更新)

神经细胞的学习笔记

weixin_46596227的博客 2222

netstat查看网络状态(windows) tasklist 查看进程

查看所有端口网络状态 C:\Users\Administrator>netstat -ano 活动连接 协议 本地地址 外部地址 状态 PID TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4 TCP 0.0.0.0:135 0.0.0.0:0 L...

qq_36769722的博客 4305

保姆级教程:Synology NAS共享文件夹从创建到权限设置的完整流程

本文提供了一份详尽的Synology NAS共享文件夹创建与权限设置指南。重点讲解了如何将NAS接入企业AD域,并利用域管理员账户进行集中身份验证和权限管理。文章从基础概念、域环境配置、文件夹创建、精细化权限分配到客户端访问与维护,完整覆盖了构建安全高效企业级文件共享空间的全流程,旨在帮助管理员实现便捷的团队协作与数据安全管理。

u9v0w的博客 557

别再手动拷贝文件了!用Keil MDK的Pack Installer一键搞定STM32上的RT-Thread Nano移植

本文详细介绍了如何使用Keil MDK的Pack Installer一键快速移植RT-Thread Nano到STM32项目,告别繁琐的手动拷贝和配置过程。通过自动化版本管理和依赖处理,移植时间从47分钟缩短至3分钟,大幅提升开发效率。文章还提供了实战步骤、高级配置技巧和常见问题解决方案,帮助开发者轻松实现RTOS集成。

weixin_29194817的博客 364

使用 eBPF 技术跟踪 Netfilter 数据流

1. 网络层数据流向与 Netfilter 体系图 1-1 为网络层内核收发核心流程图,在函数流程图中我们可以看到 Netfliter 在其中的位置(图中深色底纹圆角矩形)。图中对应的 h...

云原生实验室 1010

信创环境下,软件测试如何破局?

毕竟,在自主可控的道路上,每一行通过测试的代码,都在为信创产业的未来添砖加瓦。未来,测试工程师不仅要验证软件在信创环境的可用性,更要基于国产软硬件的特性,推动软件进行 “原生设计”—— 例如,针对国产 CPU 的多核架构优化代码,基于国产数据库的索引机制提升查询效率。某政务云平台的测试数据显示,在 “飞腾芯片 + 麒麟操作系统” 环境下,系统的并发处理能力较传统环境下降约 15%,测试团队通过优化软件的线程调度逻辑,最终将性能损失控制在 5% 以内 —— 这正是信创性能测试的价值所在。

weixin_45608163的博客 886

Reactos 第 10 章 网络操作 — 10.3 Windows的网络驱动堆叠

Windows网络驱动堆叠摘要 Windows网络驱动采用分层架构,从底层到应用层依次为: NIC Miniport驱动 - 直接操作网卡硬件(如e1000.sys) NDIS库 - 提供硬件抽象层 协议驱动(LAN Manager) - 实现NDIS协议接口 TCP/IP协议栈 - 基于lwIP实现核心网络协议 TDI接口 - 内核通信接口 AFD驱动 - 内核态Winsock支持 Winsock DLL - 提供标准socket API ReactOS实现了完整的网络堆叠,各模块位于drivers/ne

大坡3D软件开发 571

g2o&PCL 四阶多项式拟合

g2o&PCL 四阶多项式拟合

dayuhaitang1的博客 142

QT-Creator安装教程(windows)

本文介绍了Qt的下载安装步骤:1)通过镜像源下载安装包;2)运行exe文件时使用命令行参数指定镜像地址;3)在安装过程中选择路径和自定义安装组件,包含QT5和QT6版本的详细安装说明;4)安装后可继续添加扩展包或卸载组件。重点提示了QT6必须勾选的关键组件,并提供了组件管理的操作方法。

qq_53545309的博客 3114

Rerun实战手册:构建高效的多模态数据流可视化专业环境

在机器人技术、空间AI和生成媒体快速发展的今天,开发者们面临着一个共同的挑战:如何高效地处理、可视化和分析多速率、多模态的物理数据流?传统的数据可视化工具往往难以应对传感器数据、图像流、点云和时序数据的复杂融合需求。Rerun作为专为物理AI设计的数据层,提供了从数据采集到可视化再到训练流式传输的完整解决方案。 ## 📦 环境部署:构建坚实的开发基础 **核心要点**:Rerun开发环境的核

gitblog_00999的博客 811

从误检率30%到99.7%:YOLOv8/v9工业零件缺陷检测实战(附产线部署全流程与参数调优秘籍)

工业场景YOLO实战:从实验室到车间的关键调优策略 本文针对工业缺陷检测的特殊性,系统总结了YOLOv8/v9在工业应用中的实战经验。通过齿轮厂缺陷检测案例,揭示了实验室模型与工业场景的三点本质差异:小目标特性(0.2-1mm缺陷)、复杂背景干扰(油污/反光)和数据量不足问题。重点提出了工业级解决方案:1)数据采集需覆盖极端工况(不同光照/污染/角度);2)标注采用LabelStudio+预标注提升效率;3)定制工业增强策略(反光模拟/缺陷复制粘贴)。文章还提供了完整的参数调优记录和TensorRT加速部署

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1735

GameVault游戏下载与安装流程详解:从服务器到本地的完整数据流

GameVault是一款创新的自托管游戏平台,专为DRM-free游戏设计,提供从服务器到本地的完整游戏管理体验。本文将详细解析GameVault游戏下载与安装的完整数据流,帮助您理解这个自托管游戏平台如何高效管理游戏文件。 ## 🎮 GameVault核心架构解析 GameVault采用客户端-服务器架构,前端应用负责游戏展示、下载管理和本地安装,后端服务器存储游戏文件并提供API接口。整

gitblog_00692的博客 472

sphincs+ Nist Round3文档中文译版(SPHINCS+ Submission to the NIST post-quantum project, v.3)

1. 引言 哈希基础签名方案最初是由Lamport [14]在1970年代后期作为一次性签名方案开发的,并由Merkle [16]扩展为多次签名方案。这些方案的安全性易于分析,并仅依赖于所使用的哈希函数的属性。然而,Merkle基于树的签名方案需要在密钥生成时就确定要进行签名的数量,且为了保持性能这个数字要小。最重要的是,该系统需要用户记住一个状态:这个状态包含一些信息以记住密钥已经进行了多少次签名。 在Lamport方案诞生后的40年里,产生了许多想法改进了哈希基础签名的性能、实用性和理论基础,最终XMS

dedanddwb的博客 395

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

MeshCentral性能监控终极指南:实时跟踪CPU、内存、网络资源

MeshCentral是一款功能强大的基于Web的远程监控和管理平台,能够帮助用户实时跟踪CPU、内存、网络资源等关键性能指标。作为完整的远程管理解决方案,MeshCentral提供了全方位的性能监控功能,让您能够深入了解设备运行状态。🚀 ## 为什么选择MeshCentral进行性能监控? MeshCentral的性能监控模块采用智能数据采集技术,能够跨平台收集和分析系统性能数据。无论是W

gitblog_01063的博客 1322

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Wireshark网络协议分析实战:从抓包到排查,掌握核心技巧

网络协议分析是理解网络通信、排查故障和安全审计的基础技术。其核心原理在于捕获和解码流经网络接口的数据包,将底层的二进制通信转化为可读的信息。这项技术的价值在于提供了超越应用日志和监控指标的底层视角,是定位复杂网络问题的终极手段,尤其在微服务、云原生等分布式架构中不可或缺。应用场景广泛覆盖网络运维、应用性能调优和安全事件分析。本文聚焦于Wireshark这一业界标准的开源网络协议分析器,深入讲解其捕获过滤器与显示过滤器的区别与实战用法,并结合TCP三次握手、HTTP/HTTPS流量解析等经典协议分析案例,帮助

weixin_33895695的博客 332

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

审计跟踪数据未经加密,存在泄露风险

随着互联网的快速发展,越来越多的企业和个人开始关注信息安全问题。审计跟踪数据作为一种关键的信息资产,对于企业来说具有很高的价值。然而,在现实场景中,审计跟踪数据往往面临着未经加密的风险,这直接影响了企业的数据安全。本文将从防火墙策略管理和策略分析的角度出发,深入探讨审计跟踪数据泄露的原因,并结合人工智能技术对现有问题进行分析和解决。

ZOMO的博客 1037

网络命令——traceroute、tracert(windows)

traceroute 路由追踪 语法:traceroute 参数 ip / 域名1、检测是否安装 traceroute rpm -qa | grep traceroute2、可以用 yum apt 进行安装 参数选项: 参数 解释说明 -4 Use IPv4 -6 Use IPv6 -d --debug 使用 Socket 层级的排错功能 -f first_tt...

weixin_33841722的博客 7766

windows网络适配器驱动开发-NET_RING接受网络数据(上)

本文介绍了NetAdapterCx客户端驱动程序处理网络数据接收的流程。当框架调用EvtPacketQueueAdvance回调时,驱动程序需完成两个主要操作:1)将接收到的数据片段和包清空到操作系统;2)向硬件发布新缓冲区。文章通过动画示例演示了PCI网卡的接收队列处理过程,详细说明了获取环形集合、填充片段信息、绑定数据包以及更新环形索引等步骤。最后描述了如何将空片段缓冲区重新发布给硬件以供下次接收使用。该流程适用于单片段数据包的顺序接收场景。

王马的博客 563
上一篇: 管理员组获取系统权限的完美解决方案
下一篇: 底层键盘钩子拦载任意按键(回调版)
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值