Защита информации в онлайн-базе

iSom

Господа специалисты, разбирающиеся и сочувствующие, совет требуется:
есть онлайн база, чисто специализированная информация.
Состоит из порядка 20 отдельных таблиц-блоков, между собой связаны так или иначе все таблицы связаны, в итоге на выходе имеется достаточно уникальный информационный массив, аналогов ему нет и не предвидится.
Часть таблиц находится в свободном доступе, в рамках нашей базы - откорректированы, устранены ошибки, подчищены, в общем, ничего особого; а есть часть таблиц, которые уникальны в своем роде, и создание которых стоило достаточно осязаемых денег.
База известна в узких кругах, недавно общалась со мной одна мутная личность, к которой никаких радостных чувств я не испытываю, с его стороны - ровно то же самое. Да, момент - этот человек в свое время создавал нечто подобное, в более мелких масштабах и менее затратно, в общем, предполагаю, что в технологиях он сечет. Так вот очень интересовался человек техническими деталями-подробностями (которые я не знаю, к счастью ну и вопросами собственности-бла-бла-бла. После этого разговора остался некий осадок, пообщался я с программистом, который эту базу собственно и ваяет, тот меня очень огорчил своими словами, что снять всю инфу с этой онлайн-базы - как нефиг делать.
такой вариант меня совершенно не устраивает, и в данный момент интересуют меня возможности максимальной защиты размещенной информации. Если полностью слива избежать нельзя, то хотя бы максимально препятствовать этому, усложнит задачу.
да, особенность - мне надо чтобы базой пользовались юзеры, это позволяет определенные косяки выделить, поэтому вариант ограничить количество пользователей каким-то образом - не катит.
буду очень признателен за консультации-советы

AlexV769

Вроде и сообщение на полэкрана наваял, а ничего толком и не сказал, окромя страшилок про мутного чела. Что за сайт, кто такие "пользователи" и как они должны работать с данными в "базе"?
Вон как пример есть сводная база по ресурсам с порнухой, наркотой и детским развратор РосПотребНадзора или как-его-там, можно задавать вопросы, получить базу целиком как бы нельзя.

iSom

а ничего толком и не сказал
был бы я прогером - я бы может и написал понятные словеса
сайт - http://sur-base.ru/water-base/
это специализированная гидрологическая база данных, по названию реки можно получить кучу специальной информации

iSom

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

evgen5555

защищай права на инфу и всё
ну или еще вариант - обновлять почаще

iSom

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

После того, как основные информационные таблички будут внесены, что даст обновления?
Глобально информация уже не изменится, могут какие-то связи новые обозначаться между данными, улучшения-корректировки, но сами таблицы уже будут выложены по факту

AlexV769

Какого слива ты боишься? "Скликивание" базы внешними роботами? Если так, то первое, что напрашивается - капча без логина с первого запроса, капча за логином начиная с N'ого запроса в несколько минут. Это несколько (впрочем, не сильно) усложнит роботизированную сборку данных. Тут загвоздка заключается в том, что при определенных кап вложениях сэмулировать поведение пользователя можно с любой наперед заданной похожестью на живое поведение.
С другой стороны возможно забраться в базу при помощи SQL injection (ведь информация хранится в каком-нить MySQL) или подобных откровенно хакерских действий. Тут надо проверять сайт на возможность таких взломов.

iSom

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

AlexV769

Пока она выдается дозированно, с привязкой к конкретному объекту-реке - меня это все устраивает.
Но мне бы не хотелось, чтобы какой-нибудь шустрый паренек тупо взял и слил этот блок целиком и уж тем более, чтобы он потом его куда-нибудь в своих целях использовал
Циклы по программированию ещё в школе, кажется, проходят. Берешь список всех рек и дозировано сливаешь всю базу. Стоимость решения капчи - $1 за 1000 капч.

iSom

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

AlexV769

их 160 тысяч, понятно, что при цене в 1бакс за 1000 капчей обойдется это удовольствие всего в 160 тысяч
:crazy:
160k * $0.001 = $160 ~ 5крур.
что со временем
1 запрос в секунду = 60*60*24 = 86400 сек => вся база за два дня.

iSom

160k * $0.001 = $160 ~ 5крур.
да, тупая ошибка, начал писать ро баксы, а вголове на тысяче перескочил.
значит, цена вопроса - 5 тысяч рублей и два дня работы
что можно сделать для усложнения этой задачи?

zorin29

Придумайте схему троттлинга.
После первых 10 запросов ограничивать до одного запроса в минуту от одного IP, или не более, скажем, 100 запросов в сутки. Ну надо творчески подойти, я же не знаю, как часто и как много к вам ходит народа.
Можно сделать хитроумно: не просто говорить "приходите через 2 минуты", а, например, выдавать информацию, но не из базы, а случайно сгенерированный мусор. Естественно, надо это аккуратно делать, чтобы не выдавать мусор не-роботам.

pilot

что можно сделать для усложнения этой задачи?
Пользователей заставить регистрироваться и мониторить странные активности, баня подозрительных.
Всякие капчи и прочее в принципе усложняют выкачку БД, поэтому выкачивать будут хотеть все меньше с каждой такой фичей.
Upd: например, робота с поддержкой Javascript делать сложнее чем без нее и тд и тп.

iSom

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

AlexV769

значит, цена вопроса - 5 тысяч рублей и два дня работы
Программист бесплатно писать сливалку тоже не будет, тысяч за 20-30-40-50 почти наверняка найдешь кодера нужного уровня годности.
что можно сделать для усложнения этой задачи?
Затраты на усложнение слива будут как минимум соизмеримы (хотя скорее всего больше) с затратами на модификацию сливающего софта. Такие дела.

pilot

это вручную надо делать, держа человека, заточенного на эту задачу или же можно как-то без выделенного человека обойтись?
Автоматически можно делать базовые вещи, все их при желании можно обойти.
Вопрос такой: сколько, по-твоему, готов взломщик вложить в получение данных? На какую сумму ориентируешься?
Защита будет стоить дороже, в разы.

bav46

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

iSom

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

pilot

дать ограничение на логин 100 рек в день, тогда получится чтобы слить нужно будет около 5 лет
Или много логинов, что вроде нее проблема.

356ft85

Или много логинов, что вроде нее проблема.
А если активация логина по смс? Как сейчас с этим?

Dasar

А если активация логина по смс? Как сейчас с этим?
30 рублей за симку

bav46

сейчас там шикарно сделано
http://sur-base.ru/water-base/?show_obj=4092
берем цикл от 1 до 200000 чтобы наверняка и начинаем качать, единственно что структуризировать потом прийдется

sutulin

+1, тут народ глубоко в теорию вдался, но для начала нужно сделать вещи, которые бы смогли избежать выгрузки всей базы за 5 минут:
- отказаться от использования ID в запросах информации (использовать хэш)
- убрать возможность показать все объекты одного бассейнного округа
Затем
 -сделать обязательную регистрацию пользователей (возможно, с утверждением их модератором)
-сделать ограничение по количеству просмотренных результатов за день

elenangel

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

YUAL

И я бы советовал поторопиться, пока кто-нить не выкачал самым очевидным методом.

0000

Поздняк метаться, я уже сохранил себе на локале.
Продам всю базу - кому надо обращайтесь в личку!
P.S. Это просто троллинг.

pilot

+1, тут народ глубоко в теорию вдался, но для начала нужно сделать вещи, которые бы смогли избежать выгрузки всей базы за 5 минут:
Надо пока что просто прикрыть доступ к сайту совсем.

iSom

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

iSom

берем цикл от 1 до 200000 чтобы наверняка и начинаем качать
Наверное единственная надежда, что незадачливый хакер так и поступит, потому что цели своей не добьется он таким способом ;)

bav46

это таблички которые пока не показываются?
давай я жду, как только покажешь, получишь свою базу в течение часа точно :grin:
тебе указали уже на свойственные ошибки в текущей реализации, оттого сколько там информации сейчас и сколько будет когда допилите не важно принципы снятия не поменяются

bav46

потому что цели своей не добьется он таким способом
почему?

Boris1980

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

iSom

это таблички которые пока не показываются?
Да, сейчас не показываются два самых ценных блока и работа еще по одному, "невообразимо ценному" приостановлена -до тех пор, пока прогер или любой другой специалист не даст мне рекомендации, как не просрать потраченные деньги.
Да, про ошибки я прочитал, очень надеюсь, что программист тоже :mad:
да, и вообще, за любые ценные идеи со стороны был бы признателен - и признательность моя имела бы выраженные границы :)

katrin2201

Ценную инфу показывать только через толстый клиент, который секьюрно будет общаться с сервером.

iSom

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

yroslavasako

эээ, а можно чайнику перевести это?
нативное приложение с криптографическим токеном. Выдаётся только тем, кто хочет расширенные знания приобрести.

pilot

нативное приложение с криптографическим токеном. Выдаётся только тем, кто хочет расширенные знания приобрести.
И тоже ломается.

iSom

с криптографическим токеном.
это с флешкой-ключом?
Вопрос лузера (да, я уже прочитал про ломку) - насколько легко это делается?

yroslavasako

И тоже ломается.
Это как? Максимум ты сможешь сделать дубликат подписи ключа, так что система будет воспринимать два ключа как один и обслуживать за счёт общего аккаунта (его подписки или выбирая его бесплатный лимит).
Или ты предлагаешь найти пару к ключу?

356ft85

+1, тут народ глубоко в теорию вдался, но для начала нужно сделать вещи, которые бы смогли избежать выгрузки всей базы за 5 минут:- отказаться от использования ID в запросах информации (использовать хэш)
Кстати, а в чём смысл этого? допустим программист потратить пару дней на допиливание и сделает ответ на запрос по хэшу, эти же пару дней злоумышленник будет писать парсер , который выберет все хэши.

356ft85

Это как? Максимум ты сможешь сделать дубликат подписи ключа, так что система будет воспринимать два ключа как один и обслуживать за счёт общего аккаунта (его подписки или выбирая его бесплатный лимит).Или ты предлагаешь найти пару к ключу?
вероятно речь о том что злоумышленник приобретает ключ (ведь ключ выдаётся не по паспорту друзьям, а любому за деньги) и качает всю базу

iravik

выберет все хэши
все 2^128?

356ft85

все 2^128?
какие два в 128ой?
тут выше уже написали - можно сэмулировать поведение реального человека с помощью программы, это лишь вопрос времени. зачем перебор если есть парсинг?

iravik

аа, там прям списочек на сайте

356ft85

Я бы даже сказал и пасрить не надо - запускаем TelePort Pro последней версии и сидим курим ;)
Teleport Pro – один из самых известных и востребованных оффлайн-браузеров. Скачать сайт целиком с помощью этой программы можно быстро и удобно. Интерфейс программы интуитивно понятен, пользователю доступны различные настройки режима и глубины скачивания. Например, есть возможность скачать полную копию сайта с сохранением структуры каталогов, скачать отдельные файлы и т.д.
Teleport Pro поддерживает многопоточную закачку, может быть интегрирован в интернет-браузеры Internet Explorer, Opera. При скачивании сайта есть возможность задать маску файлов и тем самым скачивать или не скачивать только файлы определенного типа. Поддерживается возможность скачать сайт целиком по расписанию, возможность ограничить массовое скачивание во избежание бана на сайте.

356ft85

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

yroslavasako

и качает всю базу
зависит от типа лицензии ключа. Дешёвые ограничены 10/день

356ft85

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

iSom

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

356ft85

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

iSom

За всю историю базы об ошибках-косяках человек 15, может 20 написало, из них написавших более 1-2 раз - ну человек 6.
Но указывали на ошибки, которые вычленить было сложно или даже невозможно, нужно было попасть именно на эту реку.
Ты этот вопрос сейчас задал к тому, что я переоцениваю роль тестировщиков?

356ft85

Нет, вопрос именно о том , о чем я написал :)
Сколько конкретно запросов к базе сделали эти люди которые нашли ошибки?
Я к чему клоню - на каждого человека (точнее на его сотовый) разрешается сколько то запросов в месяц.
Сколько именно - надо чтоб с одной стороны эти люди могли выполнять роль тестировщиков как и раньше , а с другой - чтоб напряг злоумышлнника по покупке виртуальных симок обошёлся достаточно дорого (например чтоб скачать всю базу ему бы пришлось купить 10000 виртуальных номеров по 30 руб)

pilot

Ты этот вопрос сейчас задал к тому, что я переоцениваю роль тестировщиков?
К тому что тестировщики и выкачиватели отличаются поведением.

Dasar

Основной коммерческий вопрос: есть ли в России примеры продуктов, которым удалось заработать денег по схожей методике: есть большая мало меняющаяся база данных, доступ к которой продается пользователям?
ps
Известные мне примеры делают деньги и отсекают конкурентов на другом:
1. Консультант и т.д. строят бизнес на актуальности изменений (что все изменения законодательства у них учтены)
2. Картографические и т.д. - делают деньги на доп. сервисах: прокладка маршрута, учет пробок и т.д.
pps
И, соответственно, имхо, вкладываться необходимо в первую очередь:
- продумывание сервисов и их грамотную и удобную реализацию,
- в рекламу,
- в установление долгосрочных контактов с крупными корпоративными заказчиками;
- в получение юр. защиты(сертификаты, авторские свидетельства и т.д.) для своей базы, и на атаку крупных корпоративных заказчиков, использующих конкуретные способы получения данных, что они используют несертифицированный и нелицензированный способ получения данных
а в техническую защиту инфы вкладываться, имхо, стоит по минимуму (маломеняющуюся бд защитить от слива в целом невозможно)

yroslavasako

атаку крупных корпоративных заказчиков, использующих конкуретные способы получения данных, что они используют несертифицированный и нелицензированный способ получения данных
Может и эффективно, но омерзительно. Как майкрософт трясёт линукс конторы, что у них винды не стоит. И прочие звонки от официальных поставщиков дорогих и малополезных программ. Причём БД даже авторским правом не защищены.

PooH

смотри в сторону порносайтов - у них все с умом организовано

Ivan8209

Базы данных, в том числе и компиляционные работы, защищаются теми же законами
и по тем же правилам, как и книги.
По крайней мере, так было года три назад. Вернее, до того, когда там приняли
последнюю редакцию законов об интеллектуальной собственности.
Но ты сам знаешь, в какой стране ты живёшь, так что даже никакая правоприменительная
практика тебе не поможет, если чего.
> Глупо было бы ограничивать доступ к инфе, которая есть в открытом доступе
Сама информация может быть в открытом доступе, но в собранном виде,
да ещё и с каким-нибудь анализом, уже ДСП или требовать другого грифа.
---
"Держи, товарищ,
порох сухим!"

Ivan8209

> Причём БД даже авторским правом не защищены.
Гон.
---
"Vyroba umelych lidi, slecno, je tovarni tajemstvi."
Оставить комментарий
Имя или ник:
Комментарий: