Определить машину (относительно) однозначно, используя путь unc

Используя C #, и учитывая, что пользователь вводит путь unc. Есть ли способ проверить, что через 2 месяца, когда я пишу файл по пути unc, это та же машина, на которой он вошел?

то есть я записываю некоторую конфиденциальную информацию в путь и хочу помешать кому-либо поставить в сеть другую машину с тем же именем / общим ресурсом и т. д. и захватить вывод. Или, если программное обеспечение работает на ноутбуке, и пользователь подключает его к другой сети, и случайно оказывается машина с тем же именем / общим ресурсом ...

Любые идеи, кроме использования IP-адреса (и проверки того, что он такой же?). У меня не обязательно есть какие-либо права на удаленном компьютере, кроме доступа на запись к общему ресурсу unc.

Да, наверное, я параноик, но хотел бы знать, возможно ли что-нибудь ...


person Gareth    schedule 22.04.2010    source источник
comment
Если вас беспокоит безопасность, вам, вероятно, следует выбрать другой метод передачи данных.   -  person Klaus Byskov Pedersen    schedule 22.04.2010
comment
@klausbyskov, очень хороший балл +1   -  person Lazarus    schedule 22.04.2010


Ответы (3)


Если у вас нет доступа к ящику и вы не хотите использовать IP, то единственное, что я могу придумать, - это оставить скрытый файл на общей папке, когда пользователь входит в UNC, и проверять наличие и содержимое (возможно, гид) при повторном посещении.

person Lazarus    schedule 22.04.2010
comment
IP не является гарантией - если что-то настолько гнусное выйдет из строя, компьютер-самозванец почти наверняка сможет установить статический IP-адрес, соответствующий таковому у исходной машины, не так ли? - person Jay; 22.04.2010
comment
@Jay, конечно, но учитывая плохое состояние безопасности (если это действительно можно так назвать), это лучше, чем ничего. Также можно сделать вывод, что это расположение UNC, вероятно, будет довольно открытым, поскольку для рассматриваемого блока нет аутентификации, поэтому все это довольно спорно. Просто пытаюсь извлечь максимум из плохой ситуации;) - person Lazarus; 22.04.2010

Если машины находятся в одной подсети, вы можете использовать ARP для получения MAC-адреса. адрес машины. Это немного сложнее подделать. Когда они войдут в UNC-путь, получите MAC-адрес. Затем, позже, перед записью файла, сделайте то же разрешение и убедитесь, что MAC-адрес такой же.

person Mark Wilkins    schedule 22.04.2010
comment
Хорошее нестандартное мышление +1 - person Lazarus; 22.04.2010

Если вас беспокоит безопасность таких сценариев, для меня единственный возможный выход - это шифрование данных. С помощью инфраструктуры открытого ключа вы можете быть уверены, что только человек, которому вы хотите получить данные, сможет расшифровать данные, и вы также можете убедиться, что получатель знает, что вы и только вы записали данные.

В Интернете есть много информации о шифровании данных, поэтому я не буду вдаваться в подробности, но обязательно ищите такие ключевые слова, как «инфраструктура открытого ключа, rsa, aes, гибридная криптосистема, цифровая подпись».

С уважением,
Оливер Ханаппи

person Oliver Hanappi    schedule 22.04.2010