web-dev-qa-db-ja.com

Windows 10のダウンロードディレクトリからのプログラムの実行を無効にするにはどうすればよいですか?

Windows 10を実行していますが、システムのデフォルトの「ダウンロード」フォルダーの内容を実行できないようにしたいと考えています。少なくとも、ファイルのスキャン、ハッシュチェックの実行などが可能なランディングゾーンが必要です。

これは正しい音ですか?

そのフォルダーのSYSTEM(および私自身の)アクセス許可を変更して、READをそのままにして「READ AND EXECUTE」を削除します。

私はしたいする必要がありますより多くのことをするためにそこからファイルを移動します。 (ユーザーは常に最大の脅威なので、私に障害を投げ込みましょう-「彼の」方法です。)

私は数学的な厳密さを求めていません-常識的で簡単に入手できるLZが欲しいだけです。それをシステムが認識する既存のダウンロードフォルダーにしたいと思います。

3
user99573

ディレクトリのアクセス許可を変更するのがおそらく最善の方法です。比較的簡単であることに加えて、ほとんどのUnixライクなシステムと同じように動作するという利点があり、新しい(この場合はダウンロードされた)ファイルはデフォルトでは実行できません。 Win32にはumaskに相当するものはありませんが、ディレクトリの継承を使用して偽造することができます(UNIXではほとんど使用されません)。

これを行うときに留意すべきいくつかの点:

  • NTFS ACLは、ユーザーとグループの両方について、「許可」と「拒否」の両方のエントリをサポートします。それらは次の順序で評価されます:ユーザーの拒否>ユーザーの許可>グループの拒否>グループの許可。つまり、特定のユーザーの拒否は常に優先されますが、特定のユーザーの許可はそのユーザーが属するグループの拒否よりも優れていますが、ユーザーが許可も拒否もエントリを持っていない場合、ユーザーのグループのいずれかが拒否すると、これはユーザーのグループが持っているすべての許可よりも優先されます。ユーザーもユーザーのグループもエントリーを許可も拒否もしていない場合、デフォルトは許可しない(拒否)です。
  • NTFSはアクセス許可の継承をサポートします。オブジェクト(ファイル、ディレクトリ、再解析ポイントなど)は、コンテナー(ディレクトリ)から継承されたいくつかのアクセス許可を持つことができます。実際、これはNTFSのほとんどの権限が設定される方法です。明示的なACLを持つオブジェクトは比較的少数です。また、オブジェクトは継承を無効にでき(コンテナーのACLを取得しません)、ACLは継承不可になり(コンテナーに含まれているオブジェクトは継承が有効になっていても取得できません)、ACLは継承可能です。のみ(つまり、コンテナーには適用されず、継承されたACLを許可するそのコンテンツのコンテナーにのみ適用されます)。
  • 「特定のビートが一般的である」というルールに従い、競合がある場合、オブジェクトの明示的なACLは継承されたACLをオーバーライドします。そのため、Downloadsフォルダーのコンテンツに実行権限が与えられていない(または実際に拒否されている)場合でも、ダウンロード内の特定のファイルは明示的なACLによってその権限を取得する可能性があります。
  • NTFSは、ほとんどのファイルシステムと同様に、ファイルの実行許可ビットをトラバースディレクトリ許可ビットとして再利用します。そのため、DownloadsディレクトリでExecuteを削除(または拒否)すると、通常、そのコンテンツにアクセスできなくなります(まだ読み取りアクセス許可を持っているが、読み取りまたは書き込みができない限り、コンテンツを一覧表示できます)。 。ただし、Windows デフォルトは、読み取り/書き込みなどに依存して、トラバース権限チェックを無視します(必要に応じて、この動作をオフにすることができます)。代わりに。この動作は、ユーザーがA、B、またはCにまったくアクセスできないディレクトリ構造A\B\C\D.txtなどの奇妙なものを持つことができることを意味します。ファイルはそのようなアクセスを許可します(そしてユーザーは正確なパスを知っています)。また、ディレクトリの場合、実行/トラバースビットは基本的に継承の目的以外には何もしません。
  • PE形式のファイル(.EXE、.DLL、.SYSなど)に対する実行権限は期待どおりに動作しますが、実際にはいくつかのプログラム(.BAT 、.JAR、.PY、.JS、場合によっては.MSIなど)はOSによって無視されます。このようなファイルには、読み取り権限と、そのインタープリター/ランタイム/その他のみが必要です。実行権限が必要です。

以上のことから、ダウンロードディレクトリのEveryoneグループの実行/トラバースに拒否アクセス許可を設定すると(デフォルトでは継承可能なアクセス許可であることを確認できます)、ほとんどの場合、必要な操作を実行できます。

2
CBHacking

私はあなたが正しい道にいると思います。所有権を変更し、権限を適切に制限します。

Windows Defenderセキュリティセンターからフォルダ制御アクセスを使用することもできます。これにより、そのフォルダーにアクセスできるアプリケーションを制限できます。

https://cloudblogs.Microsoft.com/microsoftsecure/2017/10/23/stopping-ransomware-where-it-counts-protecting-your-data-with-controled-folder-access/

https://docs.Microsoft.com/en-us/windows/security/threat-protection/windows-defender-exploit-guard/controlled-folders-exploit-guard

また、ほとんどのエンドポイントセキュリティスイートでこのようなことを行うことができます。

1
CryptoKoan