挂海论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
 友情提示:文字/图片广告均非网站意见,请担保交易勿直接付款,由此产生的责任自负
玩游戏来117游戏网(H5不下载也能玩手游传奇,吃鸡,竞技都有)不懂社区·好资源不错过·各位资源站大佬欢迎来采集搬运IOS签名/udid证书出售/送证书加群1040456405 ██【我要租此广告位】██
... .
查看: 8182|回复: 20
打印 上一主题 下一主题

[讨论交流] NP保护的问题,讨论转帖 一起讨论吧

[复制链接]
4中级会员
520/600

520

积分

223

主题

5

听众
已帮网友解决0 个问题
好评
0
贡献
297
海币
3998
交易币
0
跳转到指定楼层
楼主
发表于 2015-3-14 20:55:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提醒:若下载的软件是收费的"请不要付款",可能是骗子,请立即联系本站举报,执意要付款被骗后本站概不负责。(任何交易请走第三方中介,请勿直接付款交易以免被骗!切记).

友情提示:文字/图片广告均非本站意见,请担保交易勿直接付款,由此产生的责任自负!!!↑↑


NP保护的问题,讨论转帖 一起讨论吧

今天是2015年03月14号。
系统:win7 64bit

NP更新了,在这之前,凡事NP的游戏基本都可以用启动远程注入DLL的方式注入。
那么今天呢?还是可以的,但是有一个问题:
在使用CreateProcess启动完成之后,游戏没有退出,但是启动游戏的那个程序(我们简称控制台程序)就会自动退出了。
我觉得好奇怪的,我想了好久也想不通为什么。
之后想应该是NP在注入npggNT.des给控制台的时候出错了,控制台崩溃掉了。
那么先启动控制台,启动一个正常加载NP的游戏(注意:不是控制台启动的,手动启动的),之后再次只用控制台启动游戏,果然,控制台并没有退出。
我就开始怀疑,在使用第一次CreateProcess启动游戏NP的时候,控制台保留着什么东西,以至于NP注入npggNT.des到控制台时出错了?


我带着很多的疑问,干脆不注入DLL,直接只写CreateProcess这个启动游戏这几行代码,结果呢......还是不行,只要游戏NP启动完成之后,启动游戏的这个程序就会退出了,好神奇。


哪位大神知道这个到底是什么意思吗?



联系我时,请说是在 挂海论坛 上看到的,谢谢!



上一篇:共享 蜀门的所有数据_最新的
下一篇:Delphi7 DLL入口点函数
免责声明:
1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关。一切关于该内容及资源商业行为与www.52ghai.com无关。

2、本站提供的一切资源内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。

3、本站信息来自第三方用户,非本站自制,版权归原作者享有,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。

4、如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵犯你版权的,请邮件与我们联系删除(邮箱:xhzlw@foxmail.com),本站将立即改正。

4中级会员
330/600

330

积分

138

主题

6

听众
已帮网友解决0 个问题
好评
0
贡献
192
海币
673
交易币
0
沙发
发表于 2015-3-14 20:56:05 | 只看该作者
你用进程了?
4中级会员
320/600

320

积分

110

主题

6

听众
已帮网友解决0 个问题
好评
0
贡献
210
海币
2942
交易币
0
板凳
发表于 2015-3-14 20:57:13 | 只看该作者
不懂,也许就是很简单阿给启动程序发一个退出消息
4中级会员
587/600

587

积分

178

主题

8

听众
已帮网友解决0 个问题
好评
0
贡献
409
海币
3231
交易币
0
地板
发表于 2015-3-14 20:57:50 | 只看该作者
处理方法要hook NP进程的OpenProcess 以及你启动时候传入的父进程句柄 传递一个假的父进程句柄就好了
4中级会员
520/600

520

积分

223

主题

5

听众
已帮网友解决0 个问题
好评
0
贡献
297
海币
3998
交易币
0
5#
 楼主| 发表于 2015-3-14 20:58:45 | 只看该作者
这个关闭原理是什么?
那为什么我先启动一个正常加载的游戏NP,之后我再启动控制台,再使用控制台启动第二个游戏NP的时候,控制台是不会退出的。
得出的结论是:先让npggNT.des这个东西先注入到控制台,之后控制台再启动游戏,这样就行了。

那么为什么直接用控制台启动游戏NP就会退出?
我擦我擦,真是想不通,有什么办法?
4中级会员
520/600

520

积分

223

主题

5

听众
已帮网友解决0 个问题
好评
0
贡献
297
海币
3998
交易币
0
6#
 楼主| 发表于 2015-3-14 20:59:11 | 只看该作者

这位是什么意思?

STARTUPINFO  si;
     PROCESS_INFORMATION pi;
     ZeroMemory(&si,sizeof(si));
     si.cb=sizeof(si);
     ZeroMemory(&pi,sizeof(pi));
     int pos=GamePath.ReverseFind('\\');
     CString Path=GamePath.Left(pos+1);

     if (!CreateProcess(GamePath,"(运行参数)",NULL,NULL,FALSE,CREATE_SUSPENDED,NULL,Path,&si,&pi))
     {
         AfxMessageBox("创建进程出错");  
         return ;
     }
     ResumeThread( pi.hThread );
     CloseHandle(pi.hThread);
     CloseHandle(pi.hProcess);

代码就是这样,只要一个启动,游戏正常运行,启动游戏的MFC程序就启动退出,好神奇
4中级会员
520/600

520

积分

223

主题

5

听众
已帮网友解决0 个问题
好评
0
贡献
297
海币
3998
交易币
0
7#
 楼主| 发表于 2015-3-14 21:00:32 | 只看该作者
wodeao 发表于 2015-3-14 20:57
不懂,也许就是很简单阿给启动程序发一个退出消息

那为什么我先启动一个正常加载的游戏NP,之后我再启动控制台,再使用控制台启动第二个游戏NP的时候,控制台是不会退出的。
4中级会员
587/600

587

积分

178

主题

8

听众
已帮网友解决0 个问题
好评
0
贡献
409
海币
3231
交易币
0
8#
发表于 2015-3-14 21:01:37 | 只看该作者
因为你创建游戏的第一次有记录你的进程句柄也就是传递的你父进程句柄
然后就关你了呗。和NP注入的那个DLL没有关系,你可以拦截下NP注入的dll再试试会不会关你就知道了
4中级会员
587/600

587

积分

178

主题

8

听众
已帮网友解决0 个问题
好评
0
贡献
409
海币
3231
交易币
0
9#
发表于 2015-3-14 21:02:01 | 只看该作者
Cuzっ 发表于 2015-3-14 20:58
这个关闭原理是什么?
那为什么我先启动一个正常加载的游戏NP,之后我再启动控制台,再使用控制台启动第 ...

处理方法要hook NP进程的OpenProcess 以及你启动时候传入的父进程句柄 传递一个假的父进程句柄就好了
4中级会员
520/600

520

积分

223

主题

5

听众
已帮网友解决0 个问题
好评
0
贡献
297
海币
3998
交易币
0
10#
 楼主| 发表于 2015-3-14 21:04:02 | 只看该作者
JolaSia 发表于 2015-3-14 21:02
处理方法要hook NP进程的OpenProcess 以及你启动时候传入的父进程句柄 传递一个假的父进程句柄就好了

"hook NP进程的OpenProcess "这个就算了吧,不会给你HOOK的,如果一个HOOK应该会报错的。启动的时候传入父进程句柄?
CreateProcess传什么进去?我没有传送吧。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

免责声明|Archiver|手机版|小黑屋|挂海论坛

GMT+8, 2025-4-5 03:11 , Processed in 0.096914 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.2

本站资源来自互联网用户收集发布,如有侵权请邮件与我们联系处理。xhzlw@foxmail.com

快速回复 返回顶部 返回列表