Windows 安全中心无法拦截自编 C++对 exFAT 移动硬盘文件的修改 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
giveafxxk
V2EX    信息安全

Windows 安全中心无法拦截自编 C++对 exFAT 移动硬盘文件的修改

  •  3
     
  •   giveafxxk 2023-02-04 15:44:18 +08:00 3349 次点击
    这是一个创建于 1030 天前的主题,其中的信息可能已经有所发展或是发生改变。

    问大家一个关于 Windows 安全中心的问题。

    同事问我 Windows 安全中心的勒索软件防护是不是只防写不防读,
    于是我自己写了个 C++程序测试了一下,源代码如下:

    #include <iostream>
    #include <fstream>
    #include <string>
    using namespace std;
    int main() {
    string data;
    ifstream txtfile;
    txtfile.open("I:\\test.txt");
    txtfile >> data;
    cout << "受保护的文本内容为:" << endl;
    cout << data << endl;
    txtfile.close();
    ofstream txtfile2;
    txtfile2.open("I:\\test.txt");
    string input;
    cout << "请输入要写入的内容:" << endl;
    cin >> input;
    txtfile2 << input << endl;
    txtfile2.close();
    cin.get();
    return 0;
    }

    结果正如视频中所见,该程序对 exFAT 的移动 SSD ( I 盘)的 test.txt 进行读操作,Windows 安全中心没有提示,写操作则有提示拦截,但仍然被写入,未拦截成功。这是为什么呢?

    补充:同事在 NTFS 的系统盘上做实验,可以成功拦截写入,但也无法拦截读取。
    第 1 条附言    2023-02-04 16:33:25 +08:00
    系统环境:Windows 10 专业版 22H2 ,已于 2023.02.03 完成所有安全更新。

    C++程序是 VS 编译的 64 位 Release 版。
    第 2 条附言    2023-02-04 16:52:20 +08:00
    蓝点网小编测试发现是有这样的问题

    第 3 条附言    2023-02-04 16:59:31 +08:00
    尝试直接双击 exe 也是一样的,排除是 VS 白名单的问题。

    且 VS 直接运行程序也会出现拦截提示却未拦截成功。
    14 条回复    2023-02-04 18:18:48 +08:00
    wingkwanli888
        1
    wingkwanli888  
       2023-02-04 15:48:27 +08:00
    读取是常操作吧
    giveafxxk
        2
    giveafxxk  
    OP
       2023-02-04 15:53:50 +08:00
    @wingkwanli888 对 exFAT 移动硬盘文件的修改也没拦截成功呀
    xmoer
        3
    xmoer  
       2023-02-04 16:17:35 +08:00
    C# 测试读写均可以拦截,环境:Windows10 x64 ( 19045 ) NTFS ,真是奇怪。
    giveafxxk
        4
    giveafxxk  
    OP
       2023-02-04 16:31:55 +0:00
    @xmoer C#也是用 fstream 吗?试试只用 ifstream (以输入模式打开)而不是用 fstream (以输入 /输出模式打开)呢?
    giveafxxk
        5
    giveafxxk  
    OP
       2023-02-04 16:34:50 +08:00
    @xmoer 我对 NTFS 盘的文本只用 ifstream 是可以读的,写才会被拦截
    0TSH60F7J2rVkg8t
        6
    0TSH60F7J2rVkg8t  
       2023-02-04 16:39:13 +08:00
    感觉是 bug 吧,向微软报告一下?
    ch2
        7
    ch2  
       2023-02-04 16:49:21 +08:00 via iPhone
    你用 vs 运行的,vs 有白名单
    giveafxxk
        8
    giveafxxk  
    OP
       2023-02-04 16:54:28 +08:00
    @ch2 我单独双击 exe 也一样,会弹出拦截通知,但未成功拦截写入( NTFS 盘则可以)。如果被白名单了,之前用 VS 直接运行,它为什么会弹通知拦截呢?
    xmoer
        9
    xmoer  
       2023-02-04 17:23:57 +08:00
    @giveafxxk 又测试了一次,发现 C# 目前写入拦截、读取无反应。但是,几个月前( Chrome 密码泄露事件的时候)我测试是可以拦截读取且有通知的。奇了怪了,难道是系统更新产生了新的 BUG ?
    giveafxxk
        10
    giveafxxk  
    OP
       2023-02-04 17:35:41 +08:00
    @xmoer B 友说 WD 一直不防读取的。但我这 exFAT 移动硬盘连写入都防不住。
    xmoer
        11
    xmoer  
       2023-02-04 17:39:30 +08:00
    @giveafxxk =_=||| 看来 WD 这个功能是不怎么靠谱了。
    mmdsun
        12
    mmdsun  
       2023-02-04 17:48:19 +08:00
    如果属于安全漏洞,微软会给赏金,可以去 MSRC 提交。而不是电脑自带的反馈中心。

    https://msrc.microsoft.com/
    xmoer
        13
    xmoer  
       2023-02-04 18:10:47 +08:00   1
    @giveafxxk 原则上来说,它应该是可以拦截 “读取 and 写入”,引用微软介绍 “阻止未经授权的或不安全的应用 ‘访问’ 或 ‘更改’ 这些文件夹中的文件”,链接: https://support.microsoft.com/zh-cn/windows/%E5%85%81%E8%AE%B8%E5%BA%94%E7%94%A8%E8%AE%BF%E9%97%AE%E5%8F%97%E6%8E%A7%E6%96%87%E4%BB%B6%E5%A4%B9-b5b6627a-b008-2ca2-7931-7e51e912b034

    现在不能拦截 “读取”,很可能是这个功能改名为 “勒索软件防护” 之后变化的。因为,里面的系统目录(用户文档)保护默认无法删除,之前会影响游戏和 QQ 的启动。个人猜测是微软后来做出了妥协。
    giveafxxk
        14
    giveafxxk  
    OP
       2023-02-04 18:18:48 +08:00
    @xmoer 啊对以前是不叫“勒索软件防护”,叫“受控文件夹访问权限”。

    https://learn.microsoft.com/zh-cn/microsoft-365/security/defender-endpoint/controlled-folders?view=o365-worldwide
    “受控文件夹访问权限在帮助保护文档和信息免受 勒索软件攻击方面特别有用。在勒索软件攻击中,文件可能会加密并被扣为人质……”

    巨硬难道就没有想过有一种勒索软件叫“信不信我把你的果照 /H 片发给你公司”
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1091 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 23:46 PVG 07:46 LAX 15:46 JFK 18:46
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86