Если Ваш бренд маршрутизатора конкретно не допускает такой перехват (большинство не делает, если Вы не говорите о промышленном материале класса с тройными затратами цифры и лицензиями использования), я боюсь, что Вы снижаетесь; лучшая ставка могла бы быть должна установить карту Wi-Fi в Вашем компьютере и попытке осуществить сниффинг беспроводного трафика непосредственно с помощью чего-то как wireshark или Кисмет.
TL; DR: Во многих случаях Вы видите, получили ли к файлу доступ; однако, невозможно сказать, была ли копия сделана или нет.
Это кажется этим atime
был бы обновлен при использовании cp
(если noatime
в действительности); однако, делая любую другую операцию чтения (как grep somestring $filename
) также коснулся бы файла.
В большинстве установок (без тонны аудита), не возможно узнать, почему точно файл был считан, и записал ли процесс, читая файл также копию данных в другом месте (к USB? снабжать сокетом? к RAM?).
Кроме того, это только касается непривилегированных нападений онлайн. Если у меня есть физический доступ, я мог бы перезагрузить в дистрибутив живого CD, смонтировать раздел, только для чтения, скопировать что-либо от него (или даже сделать полный образ диска) и не будет никаких меток на разделе (кроме увеличенного счетчика монтирования).
Я решаю это с помощью скрипта Python, идея заключается в проверке в цикле, увеличивается ли размер файла, вы должны установить time.sleep для своих нужд, в моем случае было всего 0,05 с, чтобы увидеть, увеличивается ли размер файла... Проверка завершается, когда размер в итерации перед проверкой размера совпадает с фактическим размером...
dict — это тип словаря, инициализируйте его с помощью 'dict = {}'
if not filename in dict:
#new item...
time.sleep(0.05)
dict = {filename: os.stat(fullInFilename).st_size}
break #next iteration loop, that finds itself again
else: # already exists in dict, copying finished?
time.sleep(0.05)
sizeRegistrado = dict[filename]
sizeActual = os.stat(fullInFilename).st_size
if sizeActual != sizeRegistrado:
# still copying...
dict[filename] = sizeActual
print(sizeActual)
break
else:
# Done copying
#print("pop!")
dict.pop(filename)
noatime
илиrelatime
опция? Это дало бы результаты, которые Вы описываете. (IIRC, много дистрибутивов монтируютсяext
разделы сrelatime
по умолчанию) – Piskvor left the building 14.05.2012, 18:18UUID=675e8177-c75b-402d-aaea-c0e5ee929a28 /home ext4 defaults,user_xattr 0 2
– polslinux 14.05.2012, 18:30man mount
: "Обновление в реальном времени inode времена доступа относительно изменяет или изменяет время. Время доступа только обновляется, если предыдущее время доступа было ранее, чем ток изменяет или изменяет время. Начиная с Linux 2.6.30, значения по умолчанию ядра к поведению, обеспеченному этой опцией (если noatime не был указан), и strictatime опция, требуются, чтобы получать традиционную семантику. Кроме того, начиная с Linux 2.6.30, прошлое время доступа файла всегда обновляется, если это - больше чем 1 старый день". Это - Вашdefaults
на работе, тут же. – Piskvor left the building 14.05.2012, 20:40