Сейчас на форуме: ManHunter, rmn, _MBK_, tyns777, UniSoft (+10 невидимых)

 eXeL@B —› Программирование —› C# + SSL + PHP. Вопрос недопрограммиста.
Посл.ответ Сообщение

Ранг: 7.7 (гость), 3thx
Активность: 0.010
Статус: Участник

Создано: 22 апреля 2012 18:15
· Личное сообщение · #1

Здравствуйте, товарищи форумчане.

Есть задача написать клиент-серверное приложение, в котором в роли сервера выступит PHP, а в роли клиента - C#.

Кратко изложу суть:
- клиент устанавливается на машину свободно, при запуске на сервер передаются идентификаторы железа, на стороне сервера обрабатываются алгоритмом, известному лишь серверу;
- каждый компьютер (хэш которого занесен в БД) привязан в пользователю с разграниченными на уровне PHP правами;
- если компьютер и пользователь прошел проверку, начинается обмен данными.

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

Может есть возможность генерации сертификатов, которые будут работать только на определенном компьютере?

Товарищи, прошу не судить строго, но если есть люди, понимающие, прошу дать советы в какую сторону копать.




Ранг: 105.6 (ветеран), 36thx
Активность: 0.10
Статус: Участник

Создано: 22 апреля 2012 18:27
· Личное сообщение · #2

HWID?



Ранг: 85.4 (постоянный), 51thx
Активность: 0.090
Статус: Участник

Создано: 23 апреля 2012 14:47
· Личное сообщение · #3

URTeam, вспоминал, вспоминал, где твой ник уже видел... и вспомнил...

Вообщем ты можешь сколько угодно генерировать публичных сертификатов на один приватный сертификат (конечно зная пароли), это основа PKI. При первом общении, после отправки идентификаторов, в ответ генерим и высылаем обратно публичный ключ, далее обмен данными осуществляется по шаблону Алиса-Боб со строгой проверкой сертификатов у клиента серверного, на сервере клиентского. Если идентификатор плохой, можно не слать публичный ключ




Ранг: 337.6 (мудрец), 224thx
Активность: 0.210.1
Статус: Участник
born to be evil

Создано: 23 апреля 2012 15:51
· Личное сообщение · #4

drone пишет:
При первом общении, после отправки идентификаторов, в ответ генерим и высылаем обратно публичный ключ

не догоняю, при чем тут сертификаты. если будет произведена подмена хардвари, и имя-пасс - известны - то аффтар курит бамбук палюбому

-----
От многой мудрости много скорби, и умножающий знание умножает печаль


| Сообщение посчитали полезным: DimitarSerg

Ранг: 7.7 (гость), 3thx
Активность: 0.010
Статус: Участник

Создано: 23 апреля 2012 16:12
· Личное сообщение · #5

Спасибо за ответы.

Вопрос: на сколько будет устойчива к взлому (и со стороны сервера, и со стороны клиента) система такого рода? Каковы возможности взлома такой системы?

drone, речь идет об RSA, или я чего-то не понимаю?

Как осуществлять эту строгую проверку сертификатов? Что-то я совсем запутался



Ранг: 7.7 (гость), 3thx
Активность: 0.010
Статус: Участник

Создано: 23 апреля 2012 17:09
· Личное сообщение · #6

Разграничение прав построено таким образом, что пользователь может только создавать записи,
редактирование происходит только менеджерами с других машин через комментарии к записи, только менеджерами филиала. Менеджер филиала может просматривать и править записи только своего филиала.

Полный доступ есть только у директоров, которым в свою очередь при каждой авторизации будет
приходить СМС и емайл оповещение, на случай, если пароль уплывет.

Ни у кого, кроме администратора не будет доступа к серверу.

Хотелось бы узнать, есть ли у кого опыт в реализации подобной системы? Возможно ли реализовать
что-то подобное?




Ранг: 337.6 (мудрец), 224thx
Активность: 0.210.1
Статус: Участник
born to be evil

Создано: 23 апреля 2012 17:21
· Личное сообщение · #7

URTeam пишет:
Хотелось бы узнать, есть ли у кого опыт в реализации подобной системы?

похоже на паранойю. я бы копал в сторону e-token'ов (с/без OTP)

-----
От многой мудрости много скорби, и умножающий знание умножает печаль




Ранг: 309.8 (мудрец), 21thx
Активность: 0.170
Статус: Участник

Создано: 23 апреля 2012 18:00
· Личное сообщение · #8

> в котором в роли сервера выступит PHP
> сервер на PHP
> bind($soked,

-----
Shalom ebanats!




Ранг: 53.9 (постоянный), 19thx
Активность: 0.040
Статус: Участник

Создано: 24 апреля 2012 07:22
· Личное сообщение · #9

SLV пишет:
> bind($soked,

Наверное все таки имелся ввиду обычный веб сервер с поддержкой пыхи



Ранг: 85.4 (постоянный), 51thx
Активность: 0.090
Статус: Участник

Создано: 24 апреля 2012 09:22
· Личное сообщение · #10

urteam, насколько устойчива - зависит от реализации и длины ключей, в общем смысле речь идет про RSA

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

если кто-то вздумает заюзать чужой сертификат, то баним и его до выяснения причин, или выдавать например сертификат конкретно на один ip-адрес или диапазон ip-адресов


 eXeL@B —› Программирование —› C# + SSL + PHP. Вопрос недопрограммиста.
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати