当前位置: 首页 > news >正文

网站弹出窗口jsdw自我介绍网页制作步骤

网站弹出窗口js,dw自我介绍网页制作步骤,网页设计版面划分,建设营销型网站服务Session是Windows系统的一个安全特性#xff0c;该特性引入了针对用户体验提高的安全机制#xff0c;即拆分Session 0和用户会话#xff0c;这种拆分Session 0和Session 1的机制对于提高安全性非常有用#xff0c;这是因为将桌面服务进程#xff0c;驱动程序以及其他系统级…Session是Windows系统的一个安全特性该特性引入了针对用户体验提高的安全机制即拆分Session 0和用户会话这种拆分Session 0和Session 1的机制对于提高安全性非常有用这是因为将桌面服务进程驱动程序以及其他系统级服务取消了与用户会话的关联从而限制了攻击者可用的攻击面。 由于DLL注入在Session 0中的注入机制不同于在用户会话中的注入机制因此需要特别的考虑和处理。如果需要执行DLL注入必须使用过度级别安全机制解决Session 0上下文问题并且在设计安全方案时必须考虑Session 0和Session 1之间的区别。 在之前的远程线程注入章节中我们通过使用CreateRemoteThread()这个函数来完成线程注入此方式可以注入普通的进程但却无法注入到系统进程中因为系统进程是处在SESSION0高权限级别的会话层由于CreateRemoteThread()底层会调用ZwCreateThreadEx()这个未公开的内核函数所以当我们调用该函数的底层函数时则可实现突破Session0的注入机制。 由于该内核函数并未被导出所以我们必须找到该函数的原型定义并通过GetProcAddress获取到ntdll.dll模块下的ZwCreateThreadEx的函数地址并通过ZwCreateThreadEx函数指针直接调用模块 #ifdef _WIN64typedef DWORD(WINAPI* typedef_ZwCreateThreadEx)(PHANDLE ThreadHandle,ACCESS_MASK DesiredAccess,LPVOID ObjectAttributes,HANDLE ProcessHandle,LPTHREAD_START_ROUTINE lpStartAddress,LPVOID lpParameter,ULONG CreateThreadFlags,SIZE_T ZeroBits,SIZE_T StackSize,SIZE_T MaximumStackSize,LPVOID pUnkown); #elsetypedef DWORD(WINAPI* typedef_ZwCreateThreadEx)(PHANDLE ThreadHandle,ACCESS_MASK DesiredAccess,LPVOID ObjectAttributes,HANDLE ProcessHandle,LPTHREAD_START_ROUTINE lpStartAddress,LPVOID lpParameter,BOOL CreateSuspended,DWORD dwStackSize,DWORD dw1,DWORD dw2,LPVOID pUnkown); #endif当拿到ZwCreateThreadEx函数指针时则接下来就可以调用了ZwCreateThreadEx 可以用于创建一个远程线程即在目标进程中创建一个线程并在这个线程中运行指定的代码。与CreateRemoteThread不同ZwCreateThreadEx可以用于创建一个在指定进程的上下文之外的线程即可以创建一个与指定进程无关的线程。 它的函数原型定义如下 NTSYSAPI NTSTATUS NTAPI ZwCreateThreadEx(PHANDLE ThreadHandle,ACCESS_MASK DesiredAccess,POBJECT_ATTRIBUTES ObjectAttributes,HANDLE ProcessHandle,PVOID StartRoutine,PVOID Argument,ULONG CreateFlags,SIZE_T ZeroBits,SIZE_T StackSize,SIZE_T MaximumStackSize,PPS_ATTRIBUTE_LIST AttributeList);其参数说明如下 ThreadHandle 用于返回创建的线程句柄的指针。DesiredAccess 用于指定线程句柄的访问权限。ObjectAttributes 一个指向 OBJECT_ATTRIBUTES 结构的指针指定线程对象的对象名和安全性属性。ProcessHandle 目标进程的句柄即在哪个进程中创建新线程。StartRoutine 一个指向新线程的入口点的指针。Argument 第二个参数传递给新线程的指针。CreateFlags 指定创建线程的属性如堆栈大小、创建标志、线程属性等。ZeroBits 保留参数应该传递0。StackSize 线程堆栈大小。MaximumStackSize 线程堆栈的最大大小。AttributeList 指向结构 PS_ATTRIBUTE_LIST该结构可以用于在线程创建时指定各种属性。 具备了上述基本条件那么注入代码的事项将变得非常容易如下代码是这个注入程序的完整实现流程读者可自行测试注入效果 #include windows.h #include iostream #include TlHelp32.h #include tchar.h// 传入进程名称返回该进程PID DWORD FindProcessID(LPCTSTR szProcessName) {DWORD dwPID 0xFFFFFFFF;HANDLE hSnapShot INVALID_HANDLE_VALUE;PROCESSENTRY32 pe;pe.dwSize sizeof(PROCESSENTRY32);hSnapShot CreateToolhelp32Snapshot(TH32CS_SNAPALL, NULL);Process32First(hSnapShot, pe);do{if (!_tcsicmp(szProcessName, (LPCTSTR)pe.szExeFile)){dwPID pe.th32ProcessID;break;}} while (Process32Next(hSnapShot, pe));CloseHandle(hSnapShot);return dwPID; }// 强力注入 BOOL ZwCreateThreadExInjectDll(DWORD dwProcessId, char* pDllName) {HANDLE hProcess NULL;SIZE_T dwSize 0;LPVOID pDllAddr NULL;FARPROC pFuncProcAddr NULL;HANDLE hRemoteThread NULL;DWORD dwStatus 0;// 打开注入进程hProcess OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwProcessId);if (NULL hProcess){return FALSE;}// 在注入进程中申请内存dwSize sizeof(char) lstrlen(pDllName);pDllAddr VirtualAllocEx(hProcess, NULL, dwSize, MEM_COMMIT, PAGE_READWRITE);if (NULL pDllAddr){return FALSE;}// 向申请的内存中写入数据if (FALSE WriteProcessMemory(hProcess, pDllAddr, pDllName, dwSize, NULL)){return FALSE;}// 加载ntdll.dll模块HMODULE hNtdllDll LoadLibrary(ntdll.dll);if (NULL hNtdllDll){return FALSE;}// 获取LoadLibraryA函数地址pFuncProcAddr GetProcAddress(::GetModuleHandle(Kernel32.dll), LoadLibraryA);if (NULL pFuncProcAddr){return FALSE;}// 获取ZwCreateThread函数地址 #ifdef _WIN64typedef DWORD(WINAPI* typedef_ZwCreateThreadEx)(PHANDLE ThreadHandle,ACCESS_MASK DesiredAccess,LPVOID ObjectAttributes,HANDLE ProcessHandle,LPTHREAD_START_ROUTINE lpStartAddress,LPVOID lpParameter,ULONG CreateThreadFlags,SIZE_T ZeroBits,SIZE_T StackSize,SIZE_T MaximumStackSize,LPVOID pUnkown); #elsetypedef DWORD(WINAPI* typedef_ZwCreateThreadEx)(PHANDLE ThreadHandle,ACCESS_MASK DesiredAccess,LPVOID ObjectAttributes,HANDLE ProcessHandle,LPTHREAD_START_ROUTINE lpStartAddress,LPVOID lpParameter,BOOL CreateSuspended,DWORD dwStackSize,DWORD dw1,DWORD dw2,LPVOID pUnkown); #endiftypedef_ZwCreateThreadEx ZwCreateThreadEx (typedef_ZwCreateThreadEx)::GetProcAddress(hNtdllDll, ZwCreateThreadEx);if (NULL ZwCreateThreadEx){return FALSE;}// 调用函数执行强力注入dwStatus ZwCreateThreadEx(hRemoteThread, PROCESS_ALL_ACCESS, NULL, hProcess,(LPTHREAD_START_ROUTINE)pFuncProcAddr, pDllAddr, 0, 0, 0, 0, NULL);if (NULL hRemoteThread){return FALSE;}// 关闭句柄CloseHandle(hProcess);FreeLibrary(hNtdllDll);return TRUE; }int main(int argc, char *argv[]) {DWORD pid FindProcessID(lyshark.exe);std::cout 进程PID: pid std::endl;bool flag ZwCreateThreadExInjectDll(pid, (char *)d://hook.dll);std::cout 注入状态: flag std::endl;return 0; }本文作者 王瑞 本文链接 https://www.lyshark.com/post/102cca99.html 版权声明 本博客所有文章除特别声明外均采用 BY-NC-SA 许可协议。转载请注明出处
http://www.dnsts.com.cn/news/73027.html

相关文章:

  • 学校网站开发的背景企业公示信息查询系统黑龙江
  • win7iis添加网站淘宝首页设计
  • 网站建设开票内容网站建设策划框架
  • 网站职业技能培训学校qt做网站
  • 天津网站优化指导带着做计算机项目的网站
  • 网站建设补充推广文案
  • 网站数据分析表格东昌府聊城网站优化
  • 云南做网站哪家便宜升腾d9116 做网站
  • 南宁市西乡塘区建设局网站大连旅顺港
  • 网络推广和网站推广做财务需要关注哪些网站
  • 行业协会网站模板品牌建设的最高境界
  • 长沙开福区专业网站制作wordpress 屏蔽国内ip
  • 昊诺网站建设网络推广潍坊高端网站设计
  • 海珠做网站公司网页搜索功能怎么实现
  • 网站建设商城网站推广策划思路是什么
  • 专业的网站建设收费标准做网站域名多少钱
  • 医院网站站群建设百度一下百度
  • 微信 app 微网站 整合wordpress调用昵称
  • 评级网站怎么做去掉wordpress
  • 在门户网站中营销者通过制作什么漫画网站做任务给金币
  • 做网站需要什么设备百度广告投放技巧
  • 电子商务型网站湖南网站推广哪家专业
  • 开网站卖茶要怎么做德清县住房和城乡建设局网站
  • 帝国cms 仿站 wordpress如何做一个app软件需要多少钱
  • 好看欧美视频网站模板下载 迅雷下载地址东莞网站快速排名优化
  • 做网站开发所需的知识技能wordpress页面上分页
  • 汽车网站开发思路四川冠辰科技
  • 无锡百度网站推广15.下面对网站结构描述正确的是( )
  • 专业网站制作团队专业网站制作团队广告创意设计模板
  • 济南槐荫网站开发公司各种浏览器大全