|
函数在内存中的偏移怎么计算
FUN1address+OFFSET=FUN2 |
|
[分享]指令TLB的存在性实验
想玩的花,就得上VT |
|
Win10下最简单最没技术含量的文件夹防删技术
一个U盘 进入PE 一切防删 都无用 |
|
[原创]2022游戏安全行业峰会举办,生态共建护航游戏产业
在 2022 年,游戏安全仍然是一个挑战,因为游戏行业发展迅速,游戏的复杂度和规模也在不断扩大。随着现代游戏越来越依赖于互联网和移动设备,游戏安全面临的威胁也在不断增加。 下面是 2022 年游戏安全面临的几种新形势和挑战: 增加的网络攻击:由于游戏越来越依赖于互联网,游戏可能会受到来自互联网的各种网络攻击的威胁,包括 DDoS 攻击、跨站脚本攻击 (XSS) 和 SQL 注入攻击等。 游戏平台的安全性:游戏的安全性也受到游戏平台的安全性的影响。例如,在某些情况下,游戏服务器可能会受到黑客攻击,导致游戏数据泄露。 游戏账号被偷窃:随着现代游戏越来越依赖于数字货币和虚拟物品,游戏账号的价值也在不断增加。因此,游戏账号被偷窃成为了一个普遍的问题。 游戏软件被植入恶意代码:游戏软件可能会被植入恶意代码,从而导致用户的计算机被感染病毒或蠕虫。 游戏被用于钓鱼攻击:游戏可能会被用于钓鱼攻击,从而诱导用户输入敏感信息,如账号和密码。 为了应对这些挑战,游戏公司和开发人员应该采取一些措施来保护用户的数据和设备,包括采用安全的网络架构、使用加密技术保护用户数据、定期对游戏软件进行安全测试等。此外,用户也应该采取一些措施来保护自己,如使用强密码、不随便点击来自未知来源的链接等。 |
|
求大佬出没,手机被别人窥屏了,有偿雪花解决
根据你描述的情况,你的竞标计划书被盗,以及你的手机中的信息被窃取,这很可能是一种商业竞争手段。你可以考虑联系当地的商务部门或者警方,寻求帮助。 在此之外,你也可以考虑改变你的信息安全策略,包括使用高强度的密码,不使用公用电脑或公共 Wi-Fi 进行敏感操作,以及定期更换密码等。 最后,如果你想要寻求专业的帮助,你可以联系当地的信息安全公司 |
|
[求助]x64下如何对某块内存进行cache无效并不回写到内存
在 x64 架构下,你可以使用 _mm_clflush 函数来对某块内存进行 cache 无效,并且不回写到内存。这个函数是由 SSE2 指令集提供的,可以在多线程程序中使用。 #include <xmmintrin.h> // 声明 _mm_clflush 函数 void _mm_clflush(char* p); int main() { char* p = (char*)malloc(1024); // 对 p 指向的内存块进行 cache 无效 _mm_clflush(p); return 0; } 注意, 另外,如果你想要在 x86 架构下对某块内存进行 cache 无效 在 x86 架构下,你可以使用 |
|
[求助]被传奇私服ESP反外挂黑名单导致蓝屏怎么解决
1)磁盘序列号。 2)网卡的mac地址。 4)Nvidia Gpu UUID。 5)相邻设备(例如路由器)的MAC。 6)注册表项 7)文件系统UUID(例如卷guid和diskid) 8)EFI uuid。 9)监控序列 10)缓存的USB 序列。 11)等等 12)文件时间 13)具有HWID的文件 14)系统卷影副本。 15)UPnP / SSDP USN。 16)启动GUID / bcdedit UUID。 17)USN日志ID |
|
[求助]解决在Win10x64下面傀儡进程无法调起的问题
int WINAPI TestFunc()//程序真实入口 { return 1; } int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { wchar_t wszIePath[] = L"mstsc.exe";//傀儡进程路径 STARTUPINFOW StartupInfo = { 0 }; StartupInfo.cb = sizeof(StartupInfo); PROCESS_INFORMATION ProcessInformation{ 0 }; CreateProcessW(NULL, wszIePath, NULL, NULL, FALSE, CREATE_SUSPENDED, NULL, NULL, &StartupInfo, &ProcessInformation); CONTEXT ThreadCxt; ThreadCxt.ContextFlags = CONTEXT_FULL | CONTEXT_DEBUG_REGISTERS; GetThreadContext(ProcessInformation.hThread, &ThreadCxt); HMODULE hModuleBase = GetModuleHandleA(NULL); PIMAGE_DOS_HEADER pDosHdr = (PIMAGE_DOS_HEADER)hModuleBase; PIMAGE_NT_HEADERS pNtHdr = (PIMAGE_NT_HEADERS)((uint64_t)hModuleBase + pDosHdr->e_lfanew); DWORD dwImageSize = pNtHdr->OptionalHeader.SizeOfImage; HMODULE OldModuleBase = 0; ReadProcessMemory(ProcessInformation.hProcess, (LPVOID)(ThreadCxt.Rdx + 0x10), &OldModuleBase, sizeof(OldModuleBase), NULL); typedef NTSTATUS(__stdcall *pfnZwUnmapViewOfSection)(IN HANDLE ProcessHandle, IN LPVOID BaseAddress); pfnZwUnmapViewOfSection ZwUnmapViewOfSection = (pfnZwUnmapViewOfSection)GetProcAddress(GetModuleHandleA("ntdll.dll"), "ZwUnmapViewOfSection"); ZwUnmapViewOfSection(ProcessInformation.hProcess, OldModuleBase); LPVOID lpAlloAddr = VirtualAllocEx( ProcessInformation.hProcess, //需要在其中分配空间的进程的句柄. hModuleBase, //想要获取的地址区域. dwImageSize, //要分配的内存大小. MEM_RESERVE | MEM_COMMIT,//内存分配的类型 PAGE_EXECUTE_READWRITE //内存页保护. ); WriteProcessMemory(ProcessInformation.hProcess, hModuleBase, hModuleBase, dwImageSize, NULL); WriteProcessMemory(ProcessInformation.hProcess, (LPVOID)(ThreadCxt.Rdx + 0x10), &hModuleBase, sizeof(hModuleBase), NULL); ThreadCxt.ContextFlags = CONTEXT_FULL; ThreadCxt.Rcx = (DWORD64)TestFunc; SetThreadContext(ProcessInformation.hThread, &ThreadCxt); ResumeThread(ProcessInformation.hThread); } 64位傀儡自运行 很多包含精髓 自用的 往楼主采纳 EXE使用 MT模式编译
|
|
为什么 HOOK NtUserWindowFromPoint 偶尔会蓝屏
NTSTATUS RtlSuperCopyMemory(IN VOID UNALIGNED* Destination, IN CONST VOID UNALIGNED* Source, IN ULONG Length) { //Change memory properties. PMDL g_pmdl = IoAllocateMdl(Destination, Length, 0, 0, NULL); if (!g_pmdl) return STATUS_UNSUCCESSFUL; MmBuildMdlForNonPagedPool(g_pmdl); unsigned int* Mapped = (unsigned int*)MmMapLockedPages(g_pmdl, KernelMode); if (!Mapped) { IoFreeMdl(g_pmdl); return STATUS_UNSUCCESSFUL; } KIRQL kirql = KeRaiseIrqlToDpcLevel(); RtlCopyMemory(Mapped, Source, Length); KeLowerIrql(kirql); //Restore memory properties. MmUnmapLockedPages((PVOID)Mapped, g_pmdl); IoFreeMdl(g_pmdl); return STATUS_SUCCESS; } inline BOOLEAN __forceinline IsAddressSafe(ULONG64 StartAddress, PSYSTEM_ROUTINE_ADDRESS g_pSRA) { if (StartAddress <= 0x1000) return FALSE; //cannonical check. Bits 48 to 63 must match bit 47 UINT_PTR toppart = (StartAddress >> 47); if (toppart & 1) { //toppart must be 0x1ffff if (toppart != 0x1ffff) return FALSE; } else { //toppart must be 0 if (toppart != 0) return FALSE; } UINT_PTR kernelbase = 0x7fffffffffffffffULL; if (StartAddress < kernelbase && g_pSRA->pfn_MmIsAddressValid((PVOID)StartAddress)) { return TRUE; } else { PHYSICAL_ADDRESS physical; physical.QuadPart = 0; physical = g_pSRA->pfn_MmGetPhysicalAddress((PVOID)StartAddress); return (physical.QuadPart != 0) && g_pSRA->pfn_MmIsAddressValid(StartAddress); } } 在内核中请检查 目标地址 以及Buff 地址 是否正常 可使用__try 或者MDL 判断 在或者使用 IsAddressSafe 在内存加载驱动中 通常使用 MDL 映射强写 而非使用 写Cr0 因为你必须判断 内核地址是否可读 |
|
[求助]滑块轨迹算法
https://pan.baidu.com/share/init?surl=nwDbvnF 密码:3rfa |
|
根据A列的值,得到B,C列,求算法或者三者关系,价钱可以商量
zkAV tRHmaVzl SCmvwSLH
最后于 2020-6-24 20:10
被Niceto编辑
,原因:
|
|
C++ 如何将DLL 放到资源里面直接调用 而不生成外部文件
修改 INJ.rc 里面的 IDR_DLL1 DLL "E:\\Pubg\\Imgui_Top\\x64\\Release\\d2dtop.dll" 吧这个DLL路径改成你自己的路径 bool DLLMap(BYTE * pSrcData, HANDLE hProc); //注入资源DLL 函数 bool ManualMap(HANDLE hProc, const char * szDllFile); //从文件打开DLL注入 代码采用反射 shellcode远程内存加载DLL方法 已经修复 TLS 初始化 Cookie 初始化 SEH支持 PE头抹除 以及 代码段内存属性修改 编译的DLL请使用mt模式编译 理论支持VMP加壳 VMP不可使用内存保护选项
最后于 2020-6-24 20:03
被Niceto编辑
,原因: 添加注入代码
|