- 博客(56)
- 资源 (9)
- 收藏
- 关注

原创 Winform 线程 委托 更新 WinForm界面 防止界面卡死
推荐使用这种方法:通用using System;using System.Diagnostics;using System.Windows.Forms;public static class ControlUpdata{ public static T Invoke<T>(T source, Action<T> action) where ...
2019-11-15 14:39:21
910
原创 VisualStudio vsix插件自动加载
本文介绍如何在Visual Studio扩展中实现PackageRegistration,包括设置UseManagedResourcesOnly为true,允许背景加载,并针对C#、VB、F#项目提供自动装载,附官方文档链接。增加以下特性即可……
2024-12-16 17:13:46
339
转载 C++ 获得管理员权限 以管理员身份运行程序
使用时调用GetAdmin,一个参数是程序运行时的参数,另一个是启动窗口的状态。这个函数会先判断程序是否有管理员权限,如果没有就尝试获取,获取成功就会返回1(表示又启动了一个有管理员权限的程序,并非当前程序获得了管理员权限,这个不可能做到),获取失败返回0,本来已有管理员权限则返回2。
2024-08-22 16:08:35
497
原创 C/C++ x86 x64 自写劫持补丁 方法
替换内存中的字符 加强,支持加壳的程序不允许修改内存的情况下进行修改,硬件断点设置,类型,大小,指定线程和全线程下断。例子:硬件断点、特征码搜索、字符串转特征码搜索。十六进制字符串转换为Unicode字符串。Unicode字符串转换为十六进制字符串。十六进制字符串转换为askii字符串。ascii字符串转换为十六进制字符串。Debug版 vs2017编译。Release版 LLVM编译。需要下载静态库复制到工程目录下。特征码搜索 支持堆内存搜索。单字符串转为宽字符串。宽字符串转为单字符串。
2024-08-05 18:22:47
590
1
转载 Detours库Windows API Hook
/如果成功,则返回NO_ERROR;否则,返回0。否则,返回错误代码。开始事务开始事务之后,程序可以调用或API HOOK目标函数,调用API恢复目标函数,或者调用API在事务更新中线程。在程序调用或API 提交事务之后,附加,分离和线程操作才会生效。或者,程序可以使用API 中止事务。_In_ HANDLE hThread //待处理事务更新线程的句柄//如果成功,则返回NO_ERROR;否则,返回0。否则,返回错误代码。由API 打开的事务提交时,使用指定的线程进行更新。
2024-07-08 16:54:41
180
转载 微信逆向:hook 强制输出调试信息
所以这里的思路是,直接hook log_message函数,执行log_message函数,拿到返回值,复制走返回值的字符串,然后OutputDebugStringA打印调试信息。这里log_message函数的类型是void,无返回值,但实际返回的时候,rax的值是Src指针,其实是返回了东西的,这个Src指针指向局部变量,很快就会被覆盖。对于大型软件来说,由于其庞大复杂的功能,为了开发人员更好的定位 bug,会输出调试信息辅助调试,对于逆向来说,有调试信息也会有助于更好的定位功能点。
2024-07-03 15:56:05
630
转载 DLL劫持三:inline hook JMP实例 (UDP recvfrom)
核心代码从网上找的,但原始函数调用一直有问,经过分析 整理并测试成功。以上代码在进程内调用有效,也支持进程内DLL方式,实际调用时使用代码。就可以了,DLL的话在DllMain中直接加载。
2024-07-03 10:56:09
67
转载 DLL劫持及调用数据跟踪二: 利用 MS 的Detours
这个办法不用写代码,并且效果还不错,找到 PE-DIY Tools 工具,利用Add Import Functions(往PE文件中添加需要的输入函数)这个功能,增加Hook DLL的文件名和接口,注意为了能Hook DLL必须有一个导出的接口,本例使用了hook_usb这个函数。我这里想使用简单的办法,给要调用原DLL的文件增加Import表,也就是修改调用程序,让他加载原DLL的同时了加载新的Hook DLL.以上代码中新的DLL首先劫持旧的DLL的地址,然后做日志记录,最后调用旧的DLL返回结果。
2024-07-03 10:55:05
124
转载 DLL劫持及调用数据跟踪一: 冒名顶替
参数类型的分析:通过猜测与IDA以及动态调试的方式,对大部分简单的数据类型很容易分析出来。本列中调用时由于__stdcall和__cdecl的不同,作了调整,测试成功以后,就可以在新的dll中调用原来的dll,以达到功能不变,只跟踪日志的目的,当然也可以修改代码的逻辑。如果需要分析某一个DLL的调用过程和出入口参数,可以通过文件替换的方式,利用新的DLL调用原来的DLL来实现。接口参数的跟踪与分析,这个通过IDA直接分析出来,入口参数的个数类似于arg_0,这样的形式。
2024-07-03 10:53:39
113
转载 在C#中如何优雅的获取所有程序集
某一天我正在写一些反射代码,目的是遍历所有的程序集来查找一个特定的接口,然后在Startup中调用其上的一个方法。看起来这个功能似乎很简单,但是在现实中,却没有一个清晰的,简单的,适合各种情形的方式来获取一个程序集。这篇文章获取对某些人来说非常的枯燥,但是如果我能够帮助哪怕一个人来解决此类问题,那么这篇文章也是值得的。说真的,由于有多种获取程序集的方法,我将不会说”使用这个方法”。很有可能,对于你的特定的工程来说,也许只有一种方式可以工作,所以依赖其他的方式是毫无意义的。
2024-05-22 18:47:20
877
转载 OutputDebugString完美封装
它最大的优点的是缓冲区可以自动增长,不用担心缓冲区不够,输出内容被截断。在实际使用中,一般都会将其封装,支持可变参数,方便调用。C/C++开发中经常需要输出调试信息,我们一般使用。输出到DebugView或者调试器输出窗口。支持可变参数(类似printf)。它只支持一个字符串参数。
2024-05-15 12:32:28
375
转载 C++ Windows 下读取DMI(硬件)信息的方法
系统要求在: Windows Vista, Windows XP Professional x64 Edition以上。GetSystemFirmwareTable():点击这里->
2023-10-30 15:57:24
569
转载 C++ - 使用标准库实现事件和委托,信号和槽机制
即可,该类同时也是模板类,支持定义任何返回类型和可变参数的事件类,并通过返回委托函数ID,对委托函数进行删除操作。自定义事件绑定的委托函数参数列表,可以接受多个不同类型的参数。该类默认是线程安全的,如果不想要线程安全,可以在包含头文件之前定义。进行了模板化,使用变参模板。在上述代码中我们使用。操作符添加委托函数。
2023-10-17 09:07:30
229
原创 使用C++实现DNS欺骗攻击
其中,domain_name表示需要欺骗的域名,dns_server_ip表示实际DNS服务器的IP地址,fake_ip表示需要重定向到的IP地址。在DNS查询过程中,当客户端向DNS服务器请求解析某个域名时,DNS服务器会返回该域名对应的IP地址。DNS劫持是一种常见的网络攻击方式,通过篡改DNS响应数据,使得用户访问的网站被重定向到攻击者指定的恶意站点。我们使用C++编写一个简单的DNS欺骗程序,使得当客户端请求解析特定的域名时,我们可以将其重定向到指定的IP地址。使用C++实现DNS欺骗攻击。
2023-10-11 11:02:32
372
原创 AI智能修人像插件 Retouch4me 13合1
Retouch4me是由鼎鼎大名的3D Lut Creator作者开发的一套基于神经网络的人像照片快速精修工具,它功能强大,内置了包括Portrait、Dodge Burn 、Clean Backdrop等八个人像修饰插件,基本上涵盖了人像处理中的方方面面:光影、磨皮、去瑕疵、美白等效果一应俱全。同时它基于神经网络,使得操作简单易上手,是一套备受推崇的经典插件。主要包括:Portraiture3 磨皮Noiseware64 降噪Realgrain64 胶片效果Retouch4me Clean B
2022-06-24 10:02:46
7125
2
原创 【Windows】局域网多媒体中控控制 (音量、关机、心跳)
软件使用UDP协议编写,针对多媒体中控控制电脑的音量,关机,心跳这三个功能进行编写!通讯协议在说明栏中,运行软件会在当前目录下生成一个config.txt文件,里面保存了设置!修改参数设置后,记得点一下保存!下载地址:https://nns.lanzoub.com/iChp405dce2h调试助手下载地址:网络调试助手-V1.3.zip - 蓝奏云使用调试助手可以测试软件可用性!添加心跳测试小软件用法见下图心跳测试小软件下载:https://nns.lanzoub.c...
2022-05-25 14:41:18
2096
1
原创 C# 程序托盘后台运行中……
一、添加 NotifyIcon、ContextMenuStrip控件,并给NotifyIcon 设置 Icon、Visible 属性二、在ContextMenuStrip->Items->MenuItem控件添加 显示、退出 内容三、在NotifyIcon 控件 ContextMenuStrip 属性里绑定添加的ContextMenuStrip控件//窗体关闭在托盘运行并气泡提示private void Form1_FormClosing(object sen...
2021-03-25 16:29:33
574
转载 虚拟ip的一种实现方式(手工添加和C#添加)
虚拟IP技术在高可用领域像数据库SQLSERVER、web服务器等场景下使用很多,很疑惑它是怎么实现的,偶然,发现了一种方式可以实现虚拟ip。它的原理在于同一个物理网卡,是可以拥有多个ip地址的,至于虚拟网卡,也可用通过该方式拥有多个ip。下面,就拿安装vmware后的虚拟网卡做例子,该网络连接已具有192.168.32.1的ip,尝试添加一个192.168.32.6的虚拟ip地址,介绍这两种方式。 第一种,手工添加 1、打开控制面板,在想要添加虚拟ip的网络连接上右键,选择...
2020-08-13 12:50:52
2547
转载 C#简单的跨线程内存读写库
实现x86 环境下的C#跨线程内存读写最低依赖 .net framework 2.0使用方法和简单功能: 创建MemoryHelper的实例,然后可以读写某个内存,并且可以通过基址和偏移计算地址using System;using System.Diagnostics;using System.Runtime.InteropServices;namespace Shooan.Tools{ #region 内存操作相关的权限 枚举 [Flags] enum P.
2020-08-05 13:44:32
627
原创 没有服务器利用git实现自己的程序远程更新、使用时间、公告、白名单、黑名单等
这两个api速度都非常的快。写软件必备。淘宝:http://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp苏宁:http://quan.suning.com/getSysTime.do
2020-05-12 17:27:52
667
转载 C#笔记:RSA加解密实现,欧几里德算法
第一步,随机选择两个不相等的质数p和q。第二步,计算p和q的乘积n。第三步,计算n的欧拉函数φ(n)。根据公式:φ(n) = (p-1)(q-1) 第四步,随机选择一个整数e,条件是1< e < φ(n),且e与φ(n) 互质。一般取e1=65537 第五步,计算e对于φ(n)的模反元素d。 满足e*d ≡ 1 (mod φ(n))即可。 原理讲完了。现在贴代码:...
2020-04-16 21:08:36
429
原创 编写VSTO程序的时候,运行出现错误 - “签名时出错: 指定了无效的提供程序类型”
解决方法一:1.前往office安装根目录下,找到SELFCERT.EXE程序,运行生成自定义证书,名字任意!2.在项目属性中,对签名进行设置。点击“选择从存储区选择",选中上一步生成的自定义证书即可。解决方法二:开始 - office工具 - vba 证书 - 生成一个证书(随便输入名字)然后 - 右击项目 - 签名 - 从存储区选择证书 - 出现了你刚生成的证书 - ...
2020-01-29 16:24:24
1401
原创 使用 EasyHook 让系统计算器显示文字
效果:我在学习使用EasyHook的时候,遇到一些坑,也慢慢解决了。我将采用MarshalByRefObject按引用传递和Serializable按值传递这两种方式实现计算器显示文字的效果这也是对EasyHook学习的一个过程第一种方式:使用RemoteHooking.IpcConnectClient和RemoteHooking.IpcCreateServer进行传递Remo...
2020-01-05 14:10:21
1291
原创 C# Socket TCP 异步服务端
服务端代码: using System; using System.Collections.Generic; using System.Net; using System.Net.Sockets; public class SocketHelper { //客户端连接 public Action<strin...
2019-12-12 13:27:20
584
转载 c# 通过HttpListener创建HTTP服务
在c#中可以利用HttpListener来自定义创建HTTP服务,通过http协议进行服务端与多个客户端之间的信息传递,并且可以做成windows系统服务,而不用寄宿在IIS上。以下为一个demo,分为两部分,一部分为服务端,另一部分为客户端。 服务端:class Program { static HttpListener httpobj; st...
2019-12-04 11:08:43
1825
原创 C# 修改hosts文件
using System.IO;private void UpdateHosts(string ip, string domain){ string path = @"C:\WINDOWS\system32\drivers\etc\hosts"; //更改属性 File.SetAttributes(path, FileAttributes.Normal); ...
2019-12-04 11:02:41
1436
转载 List of CIL Instructions
原地址:http://wikipedia.moesalih.com/List_of_CIL_instructionsThis is a list of the instructions in theinstruction setof the Common Intermediate Language bytecode.Opcodeabbreviated from operatio...
2019-10-13 14:41:48
592
原创 DR5加强版2019全新 | PS磨皮插件高端人像后期修图工具
适用软件:PS CC2015 - CC 2019系统:Win/Mac语言:简体中文汉化版应该是大神在Delicious Retouch 4版本的基础上增加功能而成的增强版。为了方便区分,故直接叫DR 5.0版了。下载的压缩包有详细的安装说明。下载地址:https://www.lanzous.com/i4m617a链接: https://pan....
2019-06-17 14:25:10
13761
5
原创 解决本地下层文档
特此记录!!!局域网共享找印时,如果共享的那台电脑没有开机或者网络中断时,会造成一个本地下层文档在打印,导致局域网其它电脑无法正常打印,解决方法就是先停用net stop spooler,然后删除 C:\Windows\System32\spool\PRINTERS\目录下所有文件,最后启用net start spooler,这个过程操作还是比较复杂的,现做成一个批处理,直接运行一下就OK...
2019-04-28 09:49:56
23473
1
原创 C# 串口接收数据
using System;using System.IO.Ports;using System.Text;using System.Threading;using System.Windows.Forms;namespace Serial{ public partial class Form1 : Form { public Form1() ...
2019-03-02 15:52:31
10272
2
原创 C# Socket TCP发送图片与接收图片
发送端: FileStream fs = new FileStream(@"7.jpg", FileMode.Open); private void SendImage() { //实例化socket Socket socket = new Socket(AddressFamily.Inte...
2019-02-26 15:25:50
10993
3
转载 [转]OpencvSharp进行透视变换
需要用到这么两个函数:GetPerspectiveTransform 根据四个点的位置变换,来计算透视变换所需要的变换矩阵WarpPerspective 使用变换矩阵,对图像进行透视变换.例如如下图像,从其中取四个点:然后因为想让前后宽度一直,所以得到对应的变化后的四个点(下边两点不变,上边两点拉到需要的地方).然后进行透视变换./*以下代码只展示变换部分,...
2019-02-26 10:12:52
1876
1
原创 List 列表循环 简单的游戏选择器 不使用for、forcach也可遍历
在做某些需要点一下鼠标或者自动跳到列表下一个、上一个时使用首先定义一个列表循环类,继承自 List ,这样就具有 List 所有的特性代码:public class ListLoop<T> : List<T>{ public int CurrentID { get; private set; } public int LastID ...
2018-08-25 20:12:48
1201
转载 使用C/C++语言控制7.1声道音量源代码
在国内的网址上找不到类似的文章,于是从其他方面着手,找到了如下的代码。并使用VS2010编译通过,代码公布,遵循GPL规定。具体代码从GITHUB中的QT代码移植到VS2010 点击打开链接 // wAudio.cpp : Defines the entry point for the console application.// #include "stdafx.h" ...
2018-08-25 20:04:17
768
1
OpenCV for Unity 2.3.4
2019-05-26
Google.ProtocolBuffers.2.4.1.555
2019-03-16
C# 屏幕锁屏 Lock screen
2018-04-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人