特定の日付にUSBが接続されているかどうかを確認するには? (Linux/Mac)

特定の日付にUSBが接続されているかどうかを確認するには? (Linux/Mac)

Daniel Azuelosの素晴らしいスクリプトで始めましょう。

cd /Volumes/suspicious_USB  
/usr/bin/sudo find . -atime -21 -exec ls -dluT {} \;

特定の日にUSBフラッシュドライブがコンピュータに挿入されていることを確認するにはどうすればよいですか?たとえば、5月3日ですか?ファイルが開かれたかコピーされたかを検出する方法はありますか?

LinuxとMacの端末スクリプトをお試しいただきありがとうございます!

答え1

「USBフラッシュドライブが接続されていることを確認する」という最初の質問に関して、カーネルはUSBストレージデバイスが接続されていると報告します。

次の例では、Linuxディストリビューションが使用中であると仮定しますsystemd(他のディストリビューションでは/var/log/messages同様のファイルを作成できます)。

# journalctl --since '2018-05-19' --until '2018-05-20' | grep 'kernel: usb'
May 19 12:22:15 localhost.localdomain kernel: usb 1-1.1.1: USB disconnect, device number 7
May 19 12:22:19 localhost.localdomain kernel: usb 1-1.1.1: new high-speed USB device number 8 using ehci-pci
May 19 12:22:19 localhost.localdomain kernel: usb 1-1.1.1: New USB device found, idVendor=13fe, idProduct=1f00
May 19 12:22:19 localhost.localdomain kernel: usb 1-1.1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
May 19 12:22:19 localhost.localdomain kernel: usb 1-1.1.1: Product: Patriot Memory
May 19 12:22:19 localhost.localdomain kernel: usb 1-1.1.1: Manufacturer:         
May 19 12:22:19 localhost.localdomain kernel: usb 1-1.1.1: SerialNumber: 07870CA23F48
May 19 12:22:19 localhost.localdomain kernel: usb-storage 1-1.1.1:1.0: USB Mass Storage device detected
#

答え2

はい、いくつかの指標があるかもしれません。

いいえ、上手なユーザーが検出を回避するのを防ぐ方法はありません。

お店

  • 最も楽観的なオプションは、またはfind . | xargs stat | grep 2018-05-03時間とファイルのリストです。find . | xargs stat -c "%x %n" | sort -r | head
  • USBフラッシュまたはSDカードは互換性のためにfat32を使用できます。これは、私が知っている限り(ただし簡単に確認できますmd5sum *.img)、ブロックレベルでデータをコピーする高度なファイルシステムでも、マウント回数やファイルアクセス時間を記録しません(cat /dev/sdb > backup_$(date --iso-8601).img)。
  • USBフラッシュドライブまたはSDカードには、通常、使用量を記録する(視覚的に)HDD / SSD / EMMC / NVMeのハードウェア管理機能がなく、smartctl -a /dev/sdb一時的にコントロールボードを交換してバイパスすることもできます。
  • ロギング、暗号化、およびTPMを正しく実装したポータブルストレージデバイスを入手するには、チップを分解する必要があり、検出なしで読み取るために60,000ドルの電子顕微鏡が必要です(新しいチップにチップを交換する)。

コンピュータ

  • 最も楽観的な選択は、待つとこの問題を解決できることdmesg -T | grep "New USB device found" | grep "May 03"です。dmesg -c
  • ルートがあり、ルートがない場合はログ転送を使用して追跡できますが、USBライブ展開から起動するとこれを防ぐことができます。

サンプル出力;

2018-05-19 04:57:13.723849533 -0400 ./yum.sh
2018-05-18 17:00:01.271971441 -0400 ./food.sh

[Mon May 14 19:44:19 2018] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[Mon May 14 19:44:19 2018] usb usb3: New USB device found, idVendor=1d6b, idProduct=0001

関連情報