• 请不要在回答技术问题时复制粘贴 AI 生成的内容
hahiru
V2EX  ›  程序员

请问如何阻止某程序联网或者禁止启动?

  •  
  •   hahiru · Jul 14, 2016 · 12386 views
    This topic created in 3769 days ago, the information mentioned may be changed or developed.

    我想禁止某大型多人 moba 联网或者运行,请教各位程序猿有没有比较优雅的方式,我想到的以下都有缺陷而且容易反制。

    1 :系统防火墙禁止很容易被取消掉。

    2 :网上的脚本或者监视程序一目了然,而且需要开机启动。

    3 : hosts 劫持貌似 tgp 已经可以自动修复。

    4 :映像劫持只要修改名称就能运行,而且容易误伤。

    5 :组策略阻止程序运行会有警告提示,百度一下肯定有反制教程。

    我现在暂时是用 ip 安全策略,阻止所有访问游戏服务器的请求,貌似比较隐蔽,但是我只找到阻止特定 ip 的设置,假如 ip 有变就失效了。请问怎么匹配域名?或者请问各位有没有更好的办法? 或者有大神愿意共享出驱动或者 lsp 劫持的程序吗?先谢谢了。

    Supplement 1  ·  Jul 16, 2016
    感谢各位回复,我找到了一个比较好的方法,在组策略-计算机配置-Windows 设置-域名解析策略里添加一条 规则,选择后缀 lol.qq.com 然后添加常规 DNS,启用 DNS 设置,添加一个虚假的例如 1.1.1.1 的 DNS,然后创建并应用.这样 lol 可以运行可以登录可以选择服务器,但是无法进入,提示网络错误.而且我想腾讯无论怎么更新也不会改 lol.qq.com 这个域名吧=_=.
    59 replies  •  2020-09-25 10:11:33 +08:00
    Ellison
    Ellison
    Jul 14, 2016
    1
    为什么要在本机呢,路由上弄不是更好
    hahiru
    hahiru
    OP
    Jul 14, 2016
    2
    @Ellison 因为没有路由器。。。。
    czkwg8
    czkwg8
    Jul 14, 2016
    3
    tgp 启动的时候请求了管理员权限,在本机上的屏蔽大部分都会被修正吧
    wevsty
    wevsty
    Jul 14, 2016
    4
    本地装个 DNS 服务器,然后把 DNS 设置成 127.0.0.1 就可以过滤域名了。比如 DnsSpeeder 不想访问的直接设置域名指向 127.0.0.1
    不过直接访问 IP 的还是得靠防火墙
    hahiru
    hahiru
    OP
    Jul 14, 2016
    5
    @czkwg8 对啊,所以才想问问有没有更好的方法。。。不过组策略应该不会修正。
    hahiru
    hahiru
    OP
    Jul 14, 2016
    6
    @wevsty 这个方法可能有点臃肿了。。。而且这样容易被发现呀
    ndd200
    ndd200
    Jul 14, 2016
    7
    ip 安全策略限制端口比较方便,一般游戏连接的是固定的几个端口。
    hahiru
    hahiru
    OP
    Jul 14, 2016
    8
    @ndd200 这个封端口的话程序应该会重新选择其他的端口,总不能大范围端口封禁吧这样更容易误伤。。。。
    ooTwToo
    ooTwToo
    Jul 14, 2016
    9
    就冲你这头像,我点进来了
    yalanaika
    yalanaika
    Jul 14, 2016❤️1
    10
    我觉着与其禁止,不如随机掉线,这个杀伤力比禁止厉害多了
    7654
    7654
    Jul 14, 2016
    11
    先修改 TGP 或 LOL 快捷方式,指向你的监控程式,监控程式开启时游戏一并开启
    当检测到游戏主窗口运行时, 5-7 秒内自动结束进程,然后假模假样的运行报错上传程式
    不会有开机启动困扰,并且不易发现,而且 100%触发
    SmiteChow
    SmiteChow
    Jul 14, 2016
    12
    @7654 有一死
    hahiru
    hahiru
    OP
    Jul 14, 2016 via Android
    13
    @yalanaika 额这样坑队友不太好。。。
    hahiru
    hahiru
    OP
    Jul 14, 2016 via Android
    14
    @7654 这样重装游戏就没用啦
    bdbai
    bdbai
    Jul 14, 2016 via Android
    15
    @hahiru 改组策略相当于改注册表,有管理员权限当然能修正咯。
    DejaVud
    DejaVud
    Jul 14, 2016
    16
    DLL 劫持 伪造一个 ws2_32.dll 啥的 PROCESS_ATTACH 时判断加载的进程名 然后跳转到真实 dll 处 之类之类的
    gefranks
    gefranks
    Jul 14, 2016 via iPhone
    17
    如果是 windows 的话可以用高级防火墙设置把程序连网封掉
    7654
    7654
    Jul 14, 2016
    18
    r#14 @hahiru 这样就会有一个错觉,电脑没问题,网络没问题,游戏有问题,时不时要重装一下
    而不会想到其他地方去
    mytsing520
    mytsing520
    PRO
    Jul 14, 2016
    19
    公司里的话,弄个出口路由设定,然后强行设置一波 DNS 来源,指定只允许公司内置的 DNS 服务器才能获取解析,试图连接其他 DNS 的将被切断连接
    wysnylc
    wysnylc
    Jul 14, 2016
    20
    写个程序后台轮询关闭游戏,注册成服务自动启动。
    zpole
    zpole
    Jul 14, 2016 via iPhone
    21
    只有我想问楼主这样做目的是什么吗。。。好好商量不行吗?
    honeycomb
    honeycomb
    Jul 14, 2016 via Android
    22
    这个需要 hips 软件了
    Pepsigold
    Pepsigold
    Jul 14, 2016 via iPhone
    23
    一招可以缓解这个情况,那就是,写代码~

    先利用 TXT 写以下代码另存为 VBS 格式,代码如下:

    do
    set bag=getobject("winmgmts:.rootcimv2")
    set pipe=bag.execquery("select * from win32_process where name='League of Legends.exe'")
    for each i in pipe
    i.terminate()
    next
    wscript.sleep 1000
    loop

    代码的大概意思是:系统每 1000 毫秒检测一次是否运行了 League of Legends.exe 这样一个程序,如果运行了,就会自动后台关闭程序,但对别的运行软件是没有任何影响的,绝对毫无痕迹!

    1000 毫秒和 League of Legends.exe 可以改成你需要的任何时间(比如 2 分钟检查一次就填写 120000 )和任何你需要结束的进程~

    这样,
    从别人看来的效果就是

    “英雄联盟怎么老是在我刚进去时闪退啊啊啊啊!重新进还是闪退,好气啊兄弟,不玩了!”

    把建立的 VBS 存放在这个文件夹 C:ProgramDataMicrosoftWindowsStart MenuProgramsStartUp
    开机自动就可以启动啦 。

    如果自己要玩,提前进入资源管理器找到 VBS 进程结束运行就可以的哈
    其他游戏也请自行改进程名称^_^
    akagi
    akagi
    Jul 14, 2016
    24
    @Pepsigold 意义不大,不如映像劫持
    akagi
    akagi
    Jul 14, 2016
    25
    @Pepsigold 不过也支持下~
    rekulas
    rekulas
    Jul 14, 2016
    26
    proxifier 强制代理到本地假代理可以禁止联网

    不过禁止启动很难么,删除核心文件不就禁止了
    ovear
    ovear
    Jul 14, 2016
    27
    为啥不用 taskkill 。。之前不是出了个熊孩子助手么。。虽然我也没找到。。 lz 找到了请务必告诉我声_(:з」∠)_
    hx1997
    hx1997
    Jul 14, 2016 via Android
    28
    创个标准用户给他用,你用管理员,设置密码,打开 UAC ,再用组策略和系统防火墙
    Luzifer
    Luzifer
    Jul 14, 2016
    29
    补#22 @honeycomb COMODO
    EchoWhale
    EchoWhale
    Jul 15, 2016 via Android
    30
    这是要搞舍友电脑吧😂😂
    hahiru
    hahiru
    OP
    Jul 15, 2016
    31
    @yalanaika 不用恶心他,只要让他知道不许玩就对了。
    hahiru
    hahiru
    OP
    Jul 15, 2016
    32
    @bdbai 组策略 tgp 应该没这个修复功能吧,不然我要报警了。
    hahiru
    hahiru
    OP
    Jul 15, 2016
    33
    @DejaVud =_=!这个重装就没了,而且我没有这种软件。。。
    hahiru
    hahiru
    OP
    Jul 15, 2016
    34
    @gefranks 嗯防火墙可以同时加上,不过不知道 tgp 会不会修复防火墙。。。。
    hahiru
    hahiru
    OP
    Jul 15, 2016
    35
    @7654 不用这么隐蔽,主要是明确是不许他玩游戏而且不那么容易找到解决办法就行了。
    hahiru
    hahiru
    OP
    Jul 15, 2016
    36
    @mytsing520 不是公司,家里的路由器没这么高端,我到时候看看有没有屏蔽网址的功能。。。。
    hahiru
    hahiru
    OP
    Jul 15, 2016
    37
    @zpole 同事老公每天不管她天天打游戏,恨透了 lol 然后让我帮她搞定这破游戏。我找谁商量去╮(╯_╰)╭
    bdbai
    bdbai
    Jul 15, 2016 via Android
    38
    @hahiru 改改注册表这个当然可以的...
    7654
    7654
    Jul 15, 2016
    39
    r#35 @hahiru 那这样就很简单了,用 AHK 或 autoit 绘制一个全屏窗口,只响应鼠标事件,随游戏运行,只有两个按钮,老婆我要申请玩游戏,我不玩了
    ooTwToo
    ooTwToo
    Jul 15, 2016
    40
    我能跟楼主要一份头像大图吗 (*/ω\*)
    vmebeh
    vmebeh
    Jul 15, 2016
    41
    用底层键盘钩子,游戏窗口激活时随机打乱快捷键, A 改成 M 就是 ATM 了
    hahiru
    hahiru
    OP
    Jul 15, 2016
    43
    @7654 =_=这个。。。不会弄啊。。
    hahiru
    hahiru
    OP
    Jul 15, 2016
    44
    @vmebeh T_T 我没有这种软件呀。。。
    gefranks
    gefranks
    Jul 15, 2016
    45
    这个完全看使用电脑的人的技术水平了...如果是高手的话你在电脑上无论怎么弄都会被破掉.但是成天 LOL 的.....
    可以装个 Mcafee HIPS.限制联网的程序...没有密码很难关掉
    Hanxv
    Hanxv
    Jul 15, 2016 via Android
    46
    设置路由规则, UDP 转发限制。这样游戏肯定是各种秀逗各种卡着不动,过一会儿就又好了,然后刚走一步又卡了。
    其他的不是游戏的程序,限制 UDP 基本上没多大问题。
    horsley
    horsley
    Jul 15, 2016
    47
    偷偷装个外挂 被封号就没得玩了
    ooTwToo
    ooTwToo
    Jul 15, 2016
    48
    @hahiru 蟹蟹
    xchange
    xchange
    Jul 15, 2016
    49
    重装成 Linux 就没得玩了
    zpole
    zpole
    Jul 15, 2016
    50
    @hahiru 家务事还是要两个人自己解决啊,这样搞只会计划矛盾。
    顺带,楼上的所有办法不是设置在在路由器上的都挡不住重装系统大法~
    zpole
    zpole
    Jul 15, 2016
    51
    @zpole 激化。。
    zpole
    zpole
    Jul 15, 2016
    52
    @zpole 说错了,哪怕是路由器重置一下也 over ,这技术难度可比你费尽心思禁止 lol 简单多了吧
    hahiru
    hahiru
    OP
    Jul 15, 2016 via Android
    53
    @zpole 哈哈,那倒没事,重装系统就准备跪搓衣板吧…
    sdvdxl
    sdvdxl
    Jul 15, 2016
    54
    装个 comodo 防火墙(或者杀毒套件) http://www.comodo.cn/ ,配置防火墙,阻止想要禁网的程序即可
    Bryan0Z
    Bryan0Z
    Jul 15, 2016 via Android
    55
    楼上方法都烦了,搜索一个常用外挂的进程名,然后随便用 vb/c/c++/甚至易语言建一个没有窗口的程序,程序什么都不用干,进程名和外挂程序一样,拖进开始菜单 启动文件夹,名字就起 微软设备健康助手,这样一开游戏腾讯的反外挂引擎就触发了
    ragnaroks
    ragnaroks
    Jul 16, 2016
    56
    55 楼的方法可以,不过太坑人了
    我的方法是自己写个模块注入 lsp,读远程指令就好,可以 3 天更新一次.
    不过可能那些 xx 网游加速器,xx 代理之类的会严重冲突.
    hahiru
    hahiru
    OP
    Jul 16, 2016
    57
    感谢各位回复,我找到了一个比较好的方法,在组策略-计算机配置-Windows 设置-域名解析策略里添加一条 规则,选择后缀 lol.qq.com 然后添加常规 DNS,启用 DNS 设置,添加一个虚假的例如 1.1.1.1 的 DNS,然后创建并应用.这样 lol 可以运行可以登录可以选择服务器,但是无法进入,提示网络错误.而且我想腾讯无论怎么更新也不会改 lol.qq.com 这个域名吧=_=.
    binghe
    binghe
    Jul 16, 2016
    58
    是不是这样就可以了?

    necodba
    necodba
    Sep 25, 2020
    59
    先改成 4G 路由器,然后随便改 dns 还是 host 都随意
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   552 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 94ms · UTC 20:18 · PVG 04:18 · LAX 12:18 · JFK 15:18
    ♥ Do have faith in what you're doing.