主要观点总结
文章主要介绍了作者在做腾讯游戏安全PC端复现的解题经验,以及对于第三问的解题思路分享。文章详细阐述了在缺乏源码的情况下,如何通过分析和调试程序,提取出程序的主体功能,特别是写入信息的功能,并在不破坏原有程序功能的前提下,实现降低CPU占用的目标。作者使用了各种调试和编程技巧,包括hook函数、分析加密方式、追踪程序执行流程等,最终成功提取了程序的关键功能。
关键观点总结
关键观点1: 解题过程与思路分享
文章首先介绍了作者在解题过程中遇到的困难,以及如何通过查阅文档、调试程序、分析函数功能等方式逐步解决问题。文章详细描述了如何通过hook函数、分析加密方式、追踪程序执行流程等技巧,成功提取了程序的主体功能,并实现了降低CPU占用的目标。
关键观点2: 程序功能分析
文章对程序的功能进行了详细分析,包括启动守护进程、启动工作进程、创建线程、写入密文等。通过调试和分析,揭示了程序在写入信息时使用的加密方式和明文生成方式,以及程序如何循环启动工作进程和守护进程。
关键观点3: 提取程序功能的方法
文章介绍了提取程序功能的方法,包括使用hook函数、分析加密方式、追踪程序执行流程等。通过这些方法,作者成功提取了程序的主体功能,并实现了在不破坏原有程序功能的前提下,降低CPU占用的目标。
关键观点4: 降低CPU占用的实现
文章介绍了如何通过修改参数和hook函数,实现降低CPU占用的目标。通过修改程序中的某些函数调用,减少了程序的CPU占用,同时保证了程序的正常运行和写入信息的功能。
文章预览
作者 论 坛账号:Kvancy 前言 最近一直在做往年腾讯游戏安全PC端的复现,但是2023年决赛的题做到第三问就开始有点做不动了,想在网上找找题解但是并没有找到,于是便想分享一下自己的解题经验和第三问的思路。鉴于知识的局限性,文中可能存在疏漏或不足之处,如果发现任何错误或不准确之处,请不吝赐教。 题目 (一)解题过程 第一问让我们杀死进程,可以尝试根据windowsAPI提供的TerminateProcess函数去停止进程,写份代码测试下 复制代码 隐藏代码 bool KillProcessByName ( const char * processName) { HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0 ); PROCESSENTRY32 pe; pe.dwSize = sizeof(PROCESSENTRY32); if (Process32First(hSnapshot, )) { do { if (strcmp(pe.szExeFile, processName) == 0 ) { HANDLE hProcess = OpenProcess(PROC
………………………………