利用 TDI HOOK 实现任意端口复用

Arcmap计算土方量教程 1. 创建现状TIN 结果数据: 2. 创建设计TIN 结果数据: 注意:现状TIN和设计TIN构建时候的坐标系不同,设置坐标系见最后的注意事项第1点,就是import(导入)那步骤,现状TIN构建时选择高程点数据或者等高线数据,设计TIN构建时候选择洱海面数据 3. TIN转栅格 改成你要存的数据库,注意中间不要有汉字 结果数据(设计TIN转栅格的同理) 4. 裁剪现状TIN转成的栅格 结果数据: 5. 计算土方量 结果数据: ... 阅读详情

所谓tdi hook,我这里利用的是hook tcpip dispatch table的方法,实际上复用的原理很简单,关键是hook掉tdi_event_connect,之后从*AcceptIrp中取出conn obj,将其传递到自己定义的tdisend中就可以了。
这里唯一蹩脚的地方是在处理TDI EVENT的时候,当进程启动后,它首先系统注册这些event handler,在有相应的网络事件发生的时候才进行调用,这点利用TDI MON可以看出来。因此,要在驱动启动的时候要分配一个信息结构(struct conn_ot)的HASH表,表里记录的信息可以在IRP_MJ_CLEANUP的时候进行释放。
这里我只对网络中最后一个连接做了复用,如果想复用全部的连接,需要修改一下ot_add_fileobj(),并且在连接断开的时候,处理IRP_MJ_CLEANUP就可以了。

测试方法:
首先在远程的机器上安装tdihook.sys,之后运行DMCanon.exe 2(这个数字随意指定)。运行一个网络服务,我一般用nc和apache。在本地机器运行nc连接,以ok作为magic word发送,可以得到Complete!

代码大部分取自tdi_fw。
感谢sinister大哥的指教。

代码下载请见下面的地址:
http://club.safechina.net/viewthread.php?tid=2160
http://www.whitecell.org/forums/viewthread.php?tid=253

by CDrea
http://www.safechina.net
CDrea@safechina.net

麒麟系统无法进入单用户模式该怎么办? 🏆本文收录于《全栈Bug调优(实战版)》专栏,主要记录项目实战过程中所遇到的Bug或因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!! 备注:部分问题/疑难杂症搜集于互联网。 阅读详情

相关推荐

单晶塑性abaqus-umat自学

单晶塑性abaqus-umat 摘要1. 简介2. 单晶弹塑性本构模型回顾2.1运动学 本文以翻译黄永刚老师的umat文章为主,这个颜色的为个人的理解。 摘要 包含单晶塑性的abaqus用户材料子程序。本文回顾有限元形式的单晶弹塑性和黏弹塑性,包含小变形理论,以及严格的有限变形和有限旋转理论。单晶的非弹性变形由于晶体滑移,假定遵从Schmid准则。提出多种多样的分切应力与剪切变形的自硬化和潜硬化关系,并且包含在子程序内。 1. 简介   有限元程序ABAQUS已经广泛应用在固体的变形与应力分析。除了自身大量

Niklas4088的博客 1万+

Hook 系统服务隐藏端口

作者: JIURL主页: http://jiurl.yeah.net有时候写程序,调试程序真是一件非常有趣的事,就比如这次,蹦蹦跳跳,笑嘻嘻,意犹未尽的就把这个程序搞好了。netstat 或者其他各种列举端口的工具,比如fport,或者 sysinternals 的 Tcpview,都是调用 Iphlpapi.dll 中的 API 来完成端口的列举。而 Iphlpapi.dll 中的 API 最终

...... 2291

优刻得首个「国产千卡智算集群」落地,支持智源千亿大模型训练

在人工智能引领的时代浪潮中,算力已成为技术进步与创新的核心驱动力。面对当下AI算力需求的飙升、高端AI芯片供应受限的挑战,加之OpenAI带来的技术封锁,唯有坚定不移的发展自主可控的国产技术方案,持续壮大国产智算集群规模,才能一路突破围追堵截,进一步促进国产大模型产业生态繁荣。集群还提供了完善高效的软件栈工具,集成多种主流的深度学习编程框架,通过测试验证,确保了对行业领先人工智能模型的高效支持,做到开箱即用,用户可快速投入模型的开发和部署,加速了其在人工智能领域的布局和发展。方面取得了显著成效。

Ucloud_TShare的博客 1473

Hook技术

Frida是一款轻量级Hook框架,可用于多平台上,例如Android、Windows、IOS等, Frida分为两部分,服务端运行在目标机上,通过注入进程的方式来实现劫持应用函数,另一部分运行在系统机器上。Hook翻译过来成为 【钩子】 也称作“钩子技术”,其原理是先将需要修改的函数“钩住”,然后使用自定义的函数替换原函数,让程序在运行时执行自定义函数,从而达 到动态修改软件的目的。7、根据反编译的java写hook的js。4、进去测试机的shell,启动服务。3、上传服务包到测试机。

a666666688的博客 825

把STM32MP135当单片机玩:实战SD卡脱机运行LED程序(基于MP135DK开发板)

本文详细介绍了如何在STM32MP135开发板上实现SD卡脱机运行LED程序,通过裸机开发方式(Bare Metal)利用HAL库完成GPIO控制,并解析了SD卡启动流程。内容涵盖工程创建、代码编写、SD卡烧录及常见问题排查,为开发者提供了一种高性能单片机开发方案。

weixin_33734785的博客 242

Python爬虫实战:抓取天气数据并生成可视化图表(完整可复制代码)

工具/库核心作用选型理由requests发送HTTP请求,获取天气网页内容语法简单,上手快,支持Headers配置(反爬)解析HTML页面,提取目标天气数据无需懂复杂XPath,API直观,快速定位标签pandas数据清洗、整理(如日期/温度格式化)一键处理数据格式,与matplotlib无缝适配matplotlib生成可视化图表(折线图/饼图/柱状图)Python主流可视化库,定制性强,支持保存高清图生成随机User-Agent,应对反爬自动更新UA池,避免手动维护。

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

tdi总结

1.入口函数 创建设备对象,绑定到\\Device\\Tcp,\\Device\\Udp,\\Device\\RawIp设备栈上。 设置dispatch分发函数处理创建,清理和内部外部DEVICE_CONTROL设置irp请求。 2.create请求 在create请求中获取进程名,pid上抛应用层。 应用层createfile时,在EaBuffer中传递传输层操作指...

研究源码的最底层,只持有正确的仓位 2350

STM32 ADC精准采集12V电池电压:从分压电路到软件校准全解析

本文详细解析了STM32 ADC精准采集12V电池电压的全过程,涵盖分压电路设计、电阻选型、ADC配置优化及软件校准方法。针对电池电压监测中的噪声、温漂等挑战,提供了硬件滤波与软件过采样等实战技巧,确保测量精度达到1%以内,满足嵌入式设备对电源管理的严苛要求。

tech5的博客 1014

安卓APP的hook安装与使用

hook 的安装与使用

jesting880626的博客 3327

别再乱拖了!Godot 4.x 场景编辑器的7个隐藏操作技巧(附快捷键清单)

本文揭示了Godot 4.x场景编辑器的7个隐藏操作技巧,包括智能对齐、轴心点应用、多节点批量操作等,帮助开发者提升游戏开发效率。特别介绍了坐标系切换和自定义快捷键等实用功能,适用于处理复杂场景和团队协作。

weixin_29534421的博客 361

手把手教你学Simulink——基于经典PID控制的电机系统场景实例:步进电机PID位置控制系统的实现

步进电机(Stepper Motor)是一种将电脉冲信号转化为角位移的执行元件,具有结构简单、控制方便、定位精度高等优点,广泛应用于数控机床、机器人、打印机、3D打印机等需要精确定位的场合。传统的步进电机多采用开环控制,但在高速或负载变化较大的情况下容易出现丢步、振荡等问题。为提高控制精度与响应性能,闭环PID控制被引入步进电机的位置控制中,通过编码器或旋转变压器等反馈装置,实现高精度、高稳定性的位置控制。本教程将带你使用构建一个基于PID控制的步进电机位置控制系统仿真模型步进电机建模。

MHD0815的博客 9693

TDI网络过滤驱动应用(一)

这里我们从三个实例(限流,UDP重定向,TCP重定向)大致了解TDI网络过滤驱动的基本应用场景;对于驱动防火墙的TDI网络过滤驱动复杂应用,我们需要将网络数据包进行截获以及重注入处理。对于TDI网络过滤驱动更加全面的使用,我们可以参考NetFilter SDK 2,该SDK链接为,可惜的是该SDK是一个收费的SDK,不过它提供了相关的Sample代码,包括TrafficShaper,TcpRedirector,DnsRedirector和SocksProxyServer还是非常具有参考性的。

xsinlink的博客 1937

AI上推荐 之 NeuralCF与PNN模型(改变特征交叉方式)

1. 前言 随着信息技术和互联网的发展, 我们已经步入了一个信息过载的时代,这个时代,无论是信息消费者还是信息生产者都遇到了很大的挑战: 信息消费者:如何从大量的信息中找到自己感兴趣的信息? 信息生产者:如何让自己生产的信息脱颖而出, 受到广大用户的关注? 为了解决这个矛盾, 推荐系统应时而生, 并飞速前进,在用户和信息之间架起了一道桥梁,一方面帮助用户发现对自己有价值的信息, 一方面让信息能够展现在对它感兴趣的用户前面。 推荐系统近几年有了深度学习的助推发展之势迅猛, 从前深度学习的传统推荐模型(协

Miracle8070 1万+

php开启端口复用,WebServer端口复用后门

0x00有朋友问到了我一个关于“无端口可用”的问题。说在如下图所示的内网环境中,firewall只允许Web Server的80端口建立网络连接,并且Web Server上的80端口已经被IIS、Apache等软件占用了的情况下,怎么建立一个RAT后门。0x01早 些时候的著名后门byshell就考虑到了这个问题,于是使用了一种非常挫的方式去解决。客户端将数据发送到80端口,服务端将IIS的进程打...

weixin_39521651的博客 190

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

WebServer端口复用后门

0x00 有朋友问到了我一个关于“无端口可用”的问题。说在如下图所示的内网环境中,firewall只允许Web Server的80端口建立网络连接,并且Web Server上的80端口已经被IIS、Apache等软件占用了的情况下,怎么建立一个RAT后门。 0x01 早些时候的著名后门byshell就考虑到了这个问题,于是使用了一种非常挫的方式去解决。客户端将数据发送到8

小威的博客 2980

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

WINDOWS系统下的端口复用(我来补充FsContext)

byshadow3 转:http://hi.baidu.com/hnxyy/blog/item/c65aa86ebd56ceda80cb4a46.html 前段时间在研究TDI和NDIS,发现在WINDOWS下复用端口并非很麻烦的事情,如果你对TDICLIENT比较熟悉的话,会发现这其实很容易,之前有很多种方法都可以复用端口,但是都会有或多或少的一些问题,例如hookwinsock函数...

weixin_30567471的博客 483

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Webhook端口使用介绍与演示

点击“添加”,添加用户名称,以及“身份验证令牌(Authtoken)”,该验证令牌值需要在添加用户时妥善保管,使用基本身份认证时,用户的身份认证令牌用作密码。调用成功时,文件会显示Success,点击下载文件,文件内容便是在Postman调用时,请求的主体内容,用户便实现了成功将业务数据推送至EDI系统的操作。在“Body”中,选择“raw”,再选择主体数据的格式,示例中是XML格式。之后点击Send,发送之后可以去知行之桥的Webhook端口的输出页面查看,无论调用成功与否,在该页面都会显示相应的信息。

EDI电子数据交换 | 知行软件 3831

android connect函数,Android connect函数hook

在android系统中,可以使用iptables控制单个应用网络访问。在google code上有一个开源项目-droidwall就是基于iptables实现的。除了iptables可以实现控制单个应用网络访问外,还可以通过拦截应用中的connect函数,达到控制应用访问网络的目的。下面从几个方面分析android应用中connect调用流程为例来实现拦截connect实现网络禁用和ip过滤。(以...

weixin_36325615的博客 431

[转载]Hook 系统服务隐藏端口

 netstat 或者其他各种列举端口的工具,比如fport,或者 sysinternals 的 Tcpview,都是调用 Iphlpapi.dll 中的 API 来完成端口的列举。而 Iphlpapi.dll 中的 API 最终是使用 ZwDeviceIoControlFile ,向设备对象 Device/Tcp 发 IOCTL_TCP_QUERY_INFORMATION_EX 来得到各种信息的

csdboy的专栏 1003

TDI网络过滤驱动开发指南

首先我们来看一下Windows的网络模块架构,如下:ws2_32.dll提供了基本的socket相关函数(例如socketbindlisten等)。Windows在用户层提供了一种过滤网络数据包的HOOK方案,这个就是Layered service provider(也就是我们通常说的LSP),通过这种技术我们对网络包进行HOOK了,国内很多大厂用的都是这种技术。Socket是一种统一的规范,无论是Windows还是Linux他们对外提供的接口都是一样的。

xsinlink的博客 1352

Sylar服务器框架——Hook

【代码】Sylar服务器框架——Hook。

一个小孩 1254

HOOK API 跳转大法

什么是HOOK API:       Windows下暴露的对开发人员的接口叫做应用程序编程接口,就是我们常说的API。我们在写应用层应用程序软件的时候都是通过调用各种API来实现的。有些时候,我们需要监控其他程序调用的API,也就是,当其他应用程序调用我们感兴趣的API的时候,我们在他调用前有一个机会做自己的处理,这就是HOOK API的涵义。   思路:       我

liutaoxwl的专栏 6494

Frida官方手册 - 函数Hook

函数Hook 这一篇我们看下如何在目标进程中对程序中的函数进行调用监视、参数修改、以及函数的主动调用 准备环境 创建文件 hello.c,内容如下:使用如下命令进行编译:启动程序,然后记下函数 f() 的地址(在这个例子中,值是0x400544):函数Hook 下面这个脚本中,对目标进程的函数 f() 进行了Hook,并把拦截到的函数的参数汇报出来,创建文件 hook.py 包含如下内容:使用上面记

小蓝人敌法的专栏 8960

API拦截——实现Ring3全局HOOK

首先来解释一下这次的目标。由于windows的copy-on-write机制(Ring0下可以用CR0寄存器关掉它),Ring3下的HOOK只对当前进程有效,其他进程的API还是正常的。这就是说我们必须枚举进程,然后对每个Ring3进程执行一遍HOOK操作。 但是,系统中总有新进程产生,对于这些新进程我们怎么处理呢?最容易想到的就是设置一个TIMER,每隔一段时间就枚举一遍进程然后把新的挂钩

zqf_office的专栏 887

Frida-hook基础使用之hook调试获取游戏结果

Frida-hook基础使用hook调试获取游戏结果

m0_48108919的博客 1734

Hook inet_addr or connect 实现ip转向

以前通常用修改hosts文件的方法,实现验证地址修改,但直接使用ip或dns查询代码的软件,修改hosts是无效的。 通过调试,发现某个软件请求验证前调用了inet_addr转换ip地址,通过hook inet_addr函数,实现了ip替换,网络验证转为本地验证。 unit APIHook; interface uses SysUtils, Windows, WinSock;

ccx_john的专栏 2766
上一篇: Kick the Heuristic Anti-virus out of the Rootkit
CDrea
博客等级 码龄23年 1粉丝 11原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值