.Net Framework

一文解读C# 动态拦截第三方进程中的方法函数(外挂必备)

隐身守侯 提交于 2020-10-24 14:44:42
一、前言 由于项目需要,最近研究了一下跨进程通讯改写第三方程序中的方法(运行中),把自己程序中的目标方法直接覆盖第三方程序中的方法函数;一直没有头绪,通过搜索引擎找了一大堆解决方案,资料甚是稀少,最后功夫不负有心人,经过两天的研究,终于在github 上找到两个开源的代码,通过两个开源代码结合起来即可实现我的需求。下面进一步来分析实践原理,后面会把源代码地址贴上来; 通过该文章分享,你会知道怎样通过注入一个dll模块改写第三方运行的程序中的某个方法,在里面实现自己的业务,这个场景在做外挂程序中特别实用!!! 二、场景 假如有一个第三方应用程序,这时候需要对第三方应用程序进行方法拦截,比如第三方应用程序中的某个操作需要用我们的业务覆盖掉他们的业务,那这种情况下我们有什么好的方案解决呢?我们不可能修改第三方程序的代码,那有什么方案可以解决呢?其实我们还是有办法进行”修改“第三方程序的代码的,怎么”修改“呢,请看下面实践原理,下面带你走入不一样的代码世界!!!! 三、实践 原理简化图: 这里实践我就直接写两个客户端程序来进行代码上的演示 3.1. 实现原理 Hook 目标方法: 需要改写拦截第三方程序的指定的方法,那就得需要Hook 该方法,经过查找资料在github上找到开源代码 DotNetDetour ,但是开源作者是从.net framework 4.5开始支持,不支持.net

.net 上传文件 Failed to load resource: net::ERR_CONNECTION_RESET Bug 解决

蓝咒 提交于 2020-10-24 14:33:56
环境: .net 4.0 ashx一般处理程序 使用 html5 FormData ajax上传文件 功能如下:如果用户有登录,则对文件进行处理;如果用户没登录,则直接返回json,提示用户未登录 遇到问题: 用户登录:正常 用户没登录:调试的时候,没任何异常,浏览器显示Failed to load resource: net::ERR_CONNECTION_RESET错误。 解决方法:原因找了好久,考虑到可能是文件流还没跑完,直接返回json才出错的,再代码处理处理文件流,如下所示: else { HttpFileCollection files = context.Request.Files; if (files.Count > 0 ) { using ( var stream = files[ 0 ].InputStream) { } } ToJSON( new { code = 0 }); } 结果问题竟然解决了,虽然具体原因不是很清楚,暂时记录下bug,以后有空研究一下 来源: oschina 链接: https://my.oschina.net/u/4414407/blog/4505482

ICRA 2020轨迹预测竞赛冠军的方法总结

感情迁移 提交于 2020-10-24 12:27:38
行人轨迹预测问题是无人驾驶技术的重要一环,已成为近年来的一项研究热点。在机器人领域国际顶级会议ICRA 2020上,美团无人配送团队在行人轨迹预测竞赛中夺冠,本文系对该预测方法的一些经验总结,希望能对大家有所帮助或者启发。 一、背景 6月2日,国际顶级会议ICRA 2020举办了“第二届长时人类运动预测研讨会”。该研讨会由博世有限公司、厄勒布鲁大学、斯图加特大学、瑞士洛桑联邦理工联合组织,同时在该研讨会上,还举办了一项行人轨迹预测竞赛,吸引了来自世界各地的104支队伍参赛。美团无人配送团队通过采用“世界模型”的交互预测方法,夺得了该比赛的第一名。 二、赛题简介 本次竞赛提供了街道、出入口、校园等十个复杂场景下的行人轨迹数据集,要求参赛选手根据这些数据集,利用行人在过去3.6秒的轨迹来预测其在未来4.8秒的运行轨迹。竞赛使用FDE(预测轨迹和真实轨迹的终点距离)来对各种算法进行排名。 本次的赛题数据集,主要来源于各类动态场景下的真实标注数据和模拟合成数据,采集频率为2.5赫兹,即两个时刻之间的时间差为0.4秒。数据集中的行人轨迹都以固定坐标系下的时序坐标序列表示,并且根据行人的周围环境,这些轨迹被分类成不同的类别,例如静态障碍物、线性运动、追随运动、避障行为、团体运动等。在该比赛中,参赛队伍需要根据每个障碍物历史9个时刻的轨迹数据(对应3.6秒的时间)来预测未来12个时刻的轨迹

.net微信公众号开发——模板消息

有些话、适合烂在心里 提交于 2020-10-24 11:03:12
作者:王先荣 本文介绍微信公众号中的模板消息,包括以下内容:(1)TemplateMessage类简介;(2)设置所属行业;(3)获得模板id;(4)发送模板消息;(5)接收推送模板消息发送结果事件。 本文演示地址: http://xrwang.net/Example/TemplateMessage.aspx 本文源代码地址: http://git.oschina.net/xrwang2/xrwang.weixin.PublicAccount/tree/master/PublicAccount/TemplateMessage http://git.oschina.net/xrwang2/xrwang.weixin.PublicAccount/blob/master/xrwang.net/Example/TemplateMessage.aspx.cs 1 TemplateMessage类简介 TemplateMessage静态类封装了跟模板消息相关的方法,见下表: 方法名 功能 SetIndustry 设置行业 GetId 获取模板id Send 发送模板消息 2 设置所属行业 TemplateMessage类的SetIndustry方法用于设置公众号所属的行业,该方法的定义如下: /// <summary> /// 设置行业 /// </summary> /// <param

T-RAT 2.0:通过智能手机控制恶意软件

╄→尐↘猪︶ㄣ 提交于 2020-10-24 10:37:25
译者:知道创宇404实验室翻译组 原文链接: https://www.gdatasoftware.com/blog/trat-control-via-smartphone 前言 恶意软件攻击者希望通过便利功能吸引客户。现在,攻击者只需使用智能手机和Telegram应用程序,就可以远程控制恶意软件。 俄罗斯论坛上的广告 研究人员@3xp0rtblog发现了T-rat2.0,并在Twitter上发布了它,其中包括示例哈希值和销售线程。一个奢侈的广告如下所示。 下图显示了lolz.guru(由3xp0rtblog发现并报告)上张贴广告的部分内容。它赞扬了使用T-RAT时的舒适性和便利性,因为它可以通过带有Telegram应用程序的智能手机进行控制。 翻译:更新的,成熟的RAT。放在口袋里就可以访问和使用所有功能。只需Internet和T-RAT就可以从任何设备进行控制,使其正常工作。 翻译:优点:舒适,方便,控制简单,功能丰富,匿名性和可靠性…… 感染链和持久性 第一个已知阶段是下载器[4],它从hxxps://hgfhhdsf.000webhostapp.com/1DJjnw(dot)jpg获取加密的文件[6],并将其保存到%TEMP%/gfdggfd.jpg。 为了解密有效负载,下载程序将密钥0x01应用于XOR。生成的文件是一个ZIP存档,它将保存到%TEMP%/hrtghgesd

[Hei.Captcha] Asp.Net Core 跨平台验证码实现

六月ゝ 毕业季﹏ 提交于 2020-10-24 07:55:31
写在前面 说起来比较丢脸。我们有个手机的验证码发送逻辑需要使用验证码,这块本来项目里面就有验证码绘制逻辑,.Net Framework的,使用的包是 System.Drawing ,我把这验证码绘制逻辑复制到.Net Core的新项目引用对比包 System.Drawing.Common ,windows下面验证码正常,CentOs下面死活不能正常,像这样: (左边为CentOs运行结果,右为Windows) 依赖库检查安装; 字体检查安装; 逻辑检查; 折腾了一天多放弃了,决定重新写。 我看了市面上的各种验证码,使用第三方的,免费的都有很多限制,并随时有可能开始收费(用户量上去后就收费,俗称“养猪”); 有些比较大平台的已经开始收费或者即将收费(无可厚非,不点名); 视野有限,没有都一一了解到,如果有免费的,限制又比较少的,使用体验不错的第三方验证码,欢迎留言~~ 综上,我决定自己绘制 选择图片绘制库 GitHub上面我看到比较多星的是: SixLabors / ImageSharp dlemstra / Magick.NET mono / SkiaSharp 综合考虑后选择了:ImageSharp 官方文档:https://sixlabors.github.io/docs/ 成果 Hei.Captcha 一个.net core,跨平台的验证码生成工具包,基于ImageSharp

企业微信会话 .NET SDK 版本 Demo

你说的曾经没有我的故事 提交于 2020-10-24 06:28:50
文章目录 DecryptData 解密接口返回 `10008`错误 encrypt_random_key 用 rsa 私钥解密问题 DecryptData 解密 返回值乱码问题。 读取媒体信息问题。 点我跳转查看Demo源码 😜 最近在研究企业微信会话记录同步的内容,发现官方的文档有些地方写的不是很清楚,再加上没有.NET 版本的SDK,只好根据其他两个版本的Demo 猜测.NET 应该怎么写。在其中遇到过很多坑,比如 1.DecryptData 解密接口返回 10008 错误。 2. encrypt_random_key 用 rsa 私钥解密问题 3. DecryptData 解密 返回值乱码问题。 4. 读取媒体信息问题。 以上问题会在下面一一解答, DecryptData 解密接口返回 10008 错误 这里我刚开始调试的时候,卡了好久,还是在社区加了一个好兄弟qq 才解决 😄 从 java 的 demo 复制过来的DecryptData方法 有一个 SDK 的参数,在.net 这边没有,去掉那个sdk 参数就好了 encrypt_random_key 用 rsa 私钥解密问题 这里企业微信的文档也有些不是很清楚,这里先要将encrypt_random_key 用 base64解密后,再用私钥解密,下面是解密的方法 /// <summary> /// RAS 私钥解密 ///

安全可靠国产系统背景下的应用开发应有.NET Core的一席之地

笑着哭i 提交于 2020-10-24 05:20:27
在中美当前背景下的安全可靠国产系统(简称安可),安可产业要实现技术自主可控,需要在四个层面逐步实现:基础硬件设施,如芯片、服务器、存储、交换机、路由器;底层软件,包括操作系统、数据库、中间件等;应用软件,面向实际应用的不同领域;安全产品,保障边界安全、终端安全和管理安全产品。目前在安可领域,高端芯片服务器等硬件已能基本满足办公需求;基础软件正在实现国产化替代。而在国产系统下,应用生态便显得匮乏了。 实现应用软件从普通环境到安可操作系统环境的平滑过渡,是丰富国产应用生态、推动安可生态从“可用”走向“好用”的重要手段。国内众多应用软件开发商也正在安可这一领域展开激烈竞争,今天想写下这篇文章是源于在微信群里看到一个群友发的一页内容: 这个内容明显就是要封杀在这家公司的产品国产化改造中使用.NET Core 。首先这篇内容的非常不专业,把国产化的开发语言给限制了,而且把开发平台等同于开发语言, C#才是.NET Core的主要开发语言之一。操作系统也没有选择安可联盟的操作系统,数据库也一样,只是特别的针对微软的产品。其次这位同学对.NET Core认识还是等同于10年的.NET,殊不知.NET Core是一个开源跨平台的开发平台,.NET Core是更加符合安可标准的开发平台。 最近我们也在测试龙芯MIPS64的.NET Core移植工作,我们也建立一个微信群,群里都是对龙芯的.NET

QuasarRAT

被刻印的时光 ゝ 提交于 2020-10-24 03:40:27
QuasarRAT https://github.com/quasar/QuasarRAT 功能: TCP网络流(支持IPv4和IPv6) 快速网络序列化(协议缓冲区) 压缩(QuickLZ)和加密(TLS)通信 多线程 UPnP支持 No-Ip.com支持 访问网站(隐藏且可见) 显示消息框 任务管理器 文件管理器 启动经理 远程桌面 远程外壳 下载并执行 上传并执行 系统信息 计算机命令(重新启动,关机,待机) 键盘记录器(Unicode支持) 反向代理(SOCKS5) 密码恢复(通用浏览器和FTP客户端) 注册表编辑器 支持的运行时和操作系统: .NET Framework 4.0客户端配置文件或更高版本( 下载 ) 支持的操作系统(32位和64位) Windows XP SP3 Windows Server 2003 Windows Vista Windows Server 2008 Windows 7的 Windows Server 2012 Windows 8 / 8.1 Windows 10 使用说明: 1. 点击settings 设置监听端口, 然后点击 start listening,开始监听。 2. 我们接下来生成客户端,点击builder,然后在ip/hostname中添加我们监听的IP地址,然后add host就可以,最后在点击build client

Unity3D 2019 设置的 Playmode tint 有何作用

浪尽此生 提交于 2020-10-23 21:21:53
在 Unity3D 编辑器点击运行的时候,此时对整个面板修改的值仅在本次运行生效,当运行结束之后就会回到原来的值。因此为了避免调了半天实际上是在运行模式调的值,咱可以修改 Unity3D 编辑器的界面,让咱可以知道当前是 Unity3D 运行模式 点击 Edit 的 Preferences 然后进入 Colors 界面 此时可以看到 General 的 PlayMode tine 选项 这个选项可以选择一个颜色,这个颜色指的是 Unity3D 在运行模式时编辑器显示的主题颜色 修改这个颜色,然后关闭 Perferences 窗口,回到 Unity3D 编辑器,尝试点击运行 此时就可以看到编辑器的颜色都更改了,这样就比较方便解决了没有意识到当前 Unity3d 进入了运行模式 如果调残了怎么办?在 Perferences 的最下方有个 Use Defaults 按钮,点击这个按钮就会还原为默认的配色 有了这个还原功能,小伙伴就能随意的修改颜色 我搭建了自己的博客 https://blog.lindexi.com/ 欢迎大家访问,里面有很多新的博客。只有在我看到博客写成熟之后才会放在csdn或博客园,但是一旦发布了就不再更新 如果在博客看到有任何不懂的,欢迎交流,我搭建了 dotnet 职业技术学院 欢迎大家加入 如有不方便在博客评论的问题,可以加我 QQ 2844808902 交流