|
Защита сервера для GPRS приложений, Как практически реализовать? |
|
|
|
 |
Ответов
|
Jun 29 2011, 16:02
|
Знающий
   
Группа: Свой
Сообщений: 624
Регистрация: 15-06-10
Из: Россия
Пользователь №: 57 939

|
Цитата(AlexandrY @ Jun 29 2011, 16:04)  Так проблема, как понимаю, в том что автор не имеет навыков писания серьезных производительных серверов и при этом применяет сомнительную библиотеку. У него естественная неуверенность, поэтому единственный путь это перенести аутентификацию на какие-то готовые движки, чтобы не напрягать свою самопальную реализацию прикладного протокола. А с доморощенными DoS атаками уж как нибудь можно справится просто наращиванием производительности сервера. Главное, что этим не придется заниматься прикладной программе. Действительно не имею, я системщик. Я и интересовался доморощенными DoS атаками. Насколько велика вероятность того что кто то "просканит" IP и решит побаловаться? SSL интересная штука, и на Qt это вполне реализуется (непонятно только почему Qt4 сомнительная библиотека? )? Но как реализовать это на 8 битном контроллере при 8МГц, в котором ещё 2 протокола крутится - памяти может и хватит, может даже и процессорного времени, но самому писать SSL - нереально. Вот думаю RSA прикрутить просто ради надёжности чтоли ))) . Там всё проще.
|
|
|
|
|
Jun 29 2011, 18:22
|
Знающий
   
Группа: Свой
Сообщений: 567
Регистрация: 7-07-07
Из: Донецк
Пользователь №: 28 954

|
Цитата(MKdemiurg @ Jun 29 2011, 20:02)  Действительно не имею, я системщик. Я и интересовался доморощенными DoS атаками. Насколько велика вероятность того что кто то "просканит" IP и решит побаловаться?
SSL интересная штука, и на Qt это вполне реализуется (непонятно только почему Qt4 сомнительная библиотека? )? Но как реализовать это на 8 битном контроллере при 8МГц, в котором ещё 2 протокола крутится - памяти может и хватит, может даже и процессорного времени, но самому писать SSL - нереально. Вот думаю RSA прикрутить просто ради надёжности чтоли ))) . Там всё проще. На стороне сервера вам, собственно, ничего дополнительно писать не надо, просто ставите stunnel и все. На 8бит-8 МГц с ssl конечно тяжеловато будет, как впрочем RSA, плюс еще памяти минимум 64к надо. Кстати в ssl наиболее затратный по вычислениям момент это аутентификация и генерация сеансовых ключей которая происходит как-раз с помощью RSA. Но если вы в начале разработки то зачем ограничивать себя контроллером? PIC32MX695H стоит аж 8.5$ в розницу и 6.5$ в партии >1000. ssl тянет свободно. В серии STM32F103 есть контроллеры с объемом памяти 96к(в принципе можно и внешнюю память повесить, но дороже выйдет), а в 205/207 серии 128к. Тоже ssl без проблем потянут. Наконец можно подождать пока Telit свой встроенный ssl допилит.
|
|
|
|
|
Jun 29 2011, 19:34
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(=F8= @ Jun 29 2011, 21:22)  На стороне сервера вам, собственно, ничего дополнительно писать не надо, просто ставите stunnel и все. На 8бит-8 МГц с ssl конечно тяжеловато будет, как впрочем RSA, плюс еще памяти минимум 64к надо. Кстати в ssl наиболее затратный по вычислениям момент это аутентификация и генерация сеансовых ключей которая происходит как-раз с помощью RSA. Но если вы в начале разработки то зачем ограничивать себя контроллером? PIC32MX695H стоит аж 8.5$ в розницу и 6.5$ в партии >1000. ssl тянет свободно. В серии STM32F103 есть контроллеры с объемом памяти 96к(в принципе можно и внешнюю память повесить, но дороже выйдет), а в 205/207 серии 128к. Тоже ssl без проблем потянут. Наконец можно подождать пока Telit свой встроенный ssl допилит. Хорошо, сделаю вид что никто не знает, что SSL в полный рост реализован в модемах Sierra WirelessНо вообще слухи о SSL сильно преувеличены. Никакой RSA там не нужен ибо в модемах есть защищенный сторонний канал передачи ключей по SMS. Во вторых самый вычислительно долгий процесс это не RSA который по ресурсам не большем чем FFT требует, а вычисление длинного простого числа для алгоритма Дифи-Хелмана. Но опять же если ключами обменялись заранее то больше ничего не надо. Ну а сеансовое шифрование в SSL может вестись по RC4. Кто не знает, это примитивнейшая подстановка по индексу в массиве с перестановкой в массиве. Даже на 8-и битном проце это пара десятков тактов. Самый быстрый алгоритм шифрации из известных. Вообщем SSL работает на 8-и битниках работает влет и никаких сверхзатрат памяти не требует.
|
|
|
|
|
Jun 30 2011, 09:19
|
Знающий
   
Группа: Свой
Сообщений: 567
Регистрация: 7-07-07
Из: Донецк
Пользователь №: 28 954

|
Цитата(AlexandrY @ Jun 29 2011, 22:34)  Хорошо, сделаю вид что никто не знает, что SSL в полный рост реализован в модемах Sierra WirelessНо вообще слухи о SSL сильно преувеличены. Никакой RSA там не нужен ибо в модемах есть защищенный сторонний канал передачи ключей по SMS. Во вторых самый вычислительно долгий процесс это не RSA который по ресурсам не большем чем FFT требует, а вычисление длинного простого числа для алгоритма Дифи-Хелмана. Но опять же если ключами обменялись заранее то больше ничего не надо. Ну а сеансовое шифрование в SSL может вестись по RC4. Кто не знает, это примитивнейшая подстановка по индексу в массиве с перестановкой в массиве. Даже на 8-и битном проце это пара десятков тактов. Самый быстрый алгоритм шифрации из известных. Вообщем SSL работает на 8-и битниках работает влет и никаких сверхзатрат памяти не требует. Про Sierra Wireless не знал. На счет передачи ключей по sms... ну как бы это уже не совсем ssl получается. Причем насколько я понял стоит задача обмена между девайсом с GSM модемом и сервером подключенным не через GSM модем. На счет Дифи-Хелмана. Если мне не изменяет память то аутоидентификация производится по Дифи-Хелмана ИЛИ с помощью RSA. Так зачем использовать более затратный алгоритм?(должен правда признаться что с Дифи-Хелмана не знаком поэтому вывод о затратности сделал с ваших слов, но в любом случае его поддержка необязательна) На счет сеансового шифрования. Ну восьмибитник, с учетом скорости GPRS, и AES потянет, но там еще надо хеш по MD5 или SHA вычислять - тоже не мед. А насчет памяти - максимальный размер буфера 32к отсюда и затраты. Можно конечно меньше сделать, но уже отклонение от стандарта, потеря универсальности. Цитата(MKdemiurg @ Jun 29 2011, 22:45)  Памяти всмысле флэш? К сожалению RAM. Цитата Использую мегу128 (только не надо смеяться  - что познал на том и делаю- а познал только 8битки атмеловские). Стесняет то что впринципе вся переферия для контроллера подобрана и прошива уже написана(кроме шифрования - сначала оно и не предполагалось), а переходить на тотже STM32 надо время. А в конце сентября уже надо начать тестирование. Зимой хочу спрыгнуть на ARM (может на тот же STM32). Может на нём запустить RTOS со встроеной SSL? А, что собственно смешного? Нормальный контроллер. А до осени еще времени ого-го. А какя RTOS имеет встроенный RTOS? ucLinux? Ну тут уж точно до сентября не справитесь. Да и во втроенную память не вложитесь, и вообще стрельба из пушки по воробьям. Я просто прикрутил polarssl к FreeRTOS задача совершенно не сложная. Просто пишите функции sslRead/sslWrite через которые эта библиотека читает/пишет из/в канал и sslOpen/sslClose для открытия закрытия сокета и все.
|
|
|
|
|
Jun 30 2011, 10:42
|
Знающий
   
Группа: Свой
Сообщений: 567
Регистрация: 7-07-07
Из: Донецк
Пользователь №: 28 954

|
Цитата(AlexandrY @ Jun 30 2011, 12:55)  С помощью RSA подписывают и расшифровывают сертификаты. Но если уж взялись расшифровывать сертификаты до должны уже прослеживать всю цепочку сетрификатов до главного авторизированого центра. А это куча запросов и обменов со сторонними серверами. Я слабо верю, что вообще фриварные сорсы для мелких микроконтроллеров содержат движок парсинга сертификатов X.509, а значит RSA даже при желании непонятно куда там засунуть. Не совсем так. С помощью RSA центр сертификации подписывает сертификаты, тем самым удостоверяя что предъявителю сертификата можно доверять, но кроме того сам сертификат представляет собой открытую часть RSA ключа предъявителя, который/которые(если идентифицируется и клиент) используется на этапе аутоидентификации и генерации сеансовых ключей. У микроконтроллера не стоит задача работать с неопределенным числом сертификатов, поэтом все доверенные сертификаты просто хранятся в памяти. При установке соединения полученный сертификат сравнивается со списком допустимых сертификатов(тупо побайтно) и все. А дальше все как обычно.
|
|
|
|
Сообщений в этой теме
MKdemiurg Защита сервера для GPRS приложений Jun 29 2011, 07:37 Integral а фаервол по защите от атак разве не помогает?
ИР ... Jun 29 2011, 09:27 MKdemiurg Ну собственно что будет ловить фаервол? Сервер за ... Jun 29 2011, 10:14 Integral ну у нас на ПК любие хорошие серверы берут уже гот... Jun 29 2011, 11:05 MKdemiurg Ну я не с нуля его пишу, использую Qt библиотеку ... Jun 29 2011, 11:16 Integral ну я бы сделал так...
во первых ограничить можно ч... Jun 29 2011, 11:34 follow_me Цитата(Integral @ Jun 29 2011, 13:34) при... Jun 29 2011, 12:13 MKdemiurg Наверно последую вашему совету и ограничу размер п... Jun 29 2011, 12:00 AlexandrY Цитата(MKdemiurg @ Jun 29 2011, 10:37) Кт... Jun 29 2011, 12:17 follow_me Цитата(AlexandrY @ Jun 29 2011, 14:17) Ка... Jun 29 2011, 12:28  AlexandrY Цитата(follow_me @ Jun 29 2011, 15:28) ss... Jun 29 2011, 13:04 MKdemiurg Цитата(AlexandrY @ Jun 29 2011, 15:17) Ка... Jun 29 2011, 12:45 =F8= ИНХО защита от DoS это как-бы не задача вашего сер... Jun 29 2011, 12:53 Integral Значит задача переходит в создание собственного фа... Jun 29 2011, 12:55 follow_me тут посмотрел, по перебирал варианты - нет защиты ... Jun 29 2011, 12:56 follow_me Цитата(MKdemiurg @ Jun 29 2011, 18:02) Де... Jun 29 2011, 17:59   Telit Цитата(AlexandrY @ Jun 29 2011, 23:34) Хо... Jun 30 2011, 10:48 MKdemiurg Цитата(follow_me @ Jun 29 2011, 20:59) ве... Jun 29 2011, 19:45 follow_me ну так вернемся к основному вопросу - каким образо... Jun 29 2011, 19:52 AlexandrY Цитата(follow_me @ Jun 29 2011, 22:52) ну... Jun 30 2011, 05:12 MKdemiurg Цитата(=F8= @ Jun 30 2011, 13:19) А, что ... Jun 30 2011, 10:20 =F8= Цитата(MKdemiurg @ Jun 30 2011, 13:20) Ме... Jun 30 2011, 11:01 MKdemiurg Цитата(=F8= @ Jun 30 2011, 15:01) Успеете... Jun 30 2011, 11:27 =F8= Цитата(MKdemiurg @ Jun 30 2011, 14:27) Во... Jun 30 2011, 12:57 ArtemKAD ЦитатаБрекпоинты на изменение памяти, real-tim лог... Jun 30 2011, 13:11 andrewlekar LPC17xx встроенный RTC имеет глючный. Всё равно вн... Jul 1 2011, 05:10 =F8= Цитата(andrewlekar @ Jul 1 2011, 09:10) L... Jul 1 2011, 08:51 MKdemiurg Цитата(andrewlekar @ Jul 1 2011, 09:10) L... Jul 1 2011, 06:04 andrewlekar ЦитатаА вот не разу не глючный, а очень даже прави... Jul 1 2011, 09:17 =F8= Цитата(andrewlekar @ Jul 1 2011, 12:17) Я... Jul 1 2011, 10:24 MKdemiurg Такой вопросец напишу в тему, всегда ли адрес полу... Jul 1 2011, 10:57 =F8= Цитата(MKdemiurg @ Jul 1 2011, 13:57) Так... Jul 1 2011, 12:17
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|