Вече десетина дена използваме reCaptcha за електронните услуги със свободен достъп на НАП. Разбира се, доста по-лесно щеше да сложим някоя стандартна, или да имплементираме собствена, но доста се поблазних от идеята да се впрегне мисълта на целокупната финансово-счетоводна общност в нещо по-глобално и смислено, а именно дигитализирането на книги. За момента единствено търсенето в публичния ДДС регистър е защитено по този начин, но така ще бъде и със здравния статус, проверката за осигуровки и т.н., което само по себе си е доста сериозен обем.
Остава сега да видим доколко reCaptcha ще затрудни редовните потребители – още в началото имаше индикации, че е твърде сложно. Събираме статистика, която ще ни помогне да вземем решение дали ще оставим нещата така, или ще сложим по-четима captcha. Което от гледна точка на сигурността си е неприятно.
Ако някой има опит в подобна ситуация, да споделя “за” и “против” :)
Не съм ползвал reCaptcha в наши проекти, но пък като потребител съм минавал през нея доста пъти. Мога да кажа, че това е най-добрата (добре де, една от най-добрите) имплементация на CAPTCHA с картинка. От гледна точка на достъпност е доста по-добра от повечето подобни, предполагам, че при собствена имплементация в повечето случай никой не си прави труда да осигури достъпност за хората с нарушено зрение.
На мен ми е интересно обмисляли ли сте решение, различно от картинка с разкривен текст? Повечето решения са ориентирани към форми за коментари или регистрация, но предполагам, че могат да се приложат и при вас.
Моят опит с CAPTCHA е, че собствените имплементации много често се оказват несъвършени и от време на време спамърите ги пробиват или заобикалят. На няколко места във форми за коментари сме пробвали различни решения, като успешни са скрити полета със случайна стойност, която после се сравнява, и noshlyok – подобни решения. По този начин хем потребителя не се затормозява, хем спама се спира.
Позачитал съм теорията и съм правил някои експерименти. Практиката показва, че потребителите са свикнали да пишат “разкривените буквички от картинката”, въпреки, че има и други интересни решения, като ASIRRA например.
Мен по-скоро ме притеснява, че често (особено в държавната администрация) не се разбира идеята за captcha-та и се правят абсолютно lame кръжочни наработки.
Да, виждали сме примери за такива ;-) А това с котките и кучетата не е по-добро от свястна картинка с текст според мен. Още повече, че reCaptcha върши и нещо полезно.
Според мен използването въобще на CAPTCHA на много места в сайтовете на държавната администрация е напълно неуместно. Според мен, съдържанието на подобни публични регистри трябва да е свободно достъпно както за хора така и за машини. Какво по-добро от това, фирми, които правят софтуер за фактуриране (пък и друг бизнес софтуер) да проверяват информацията от публичните регистри при попълване на документ (фактура)? Дайте web-api, а не CAPTCHA !!!
С CAPTCHA се защитават основно заявките постващи информация в Интернет, понеже те са цел на спам ботовете. Справките също могат да се защитават, но само ако те са обект на авторско право. Какво авторско право защитава НАП над регистъра за регистрираните лица по ЗДДС? Напротив целта на НАП трябва да бъде да го направи максимално достъпен както за директни потребители, така и за софтуерни проекти на трети страни. Защо за да получа справка, дали даден номер по ЗДДС от сайта на НАП аз трябва да изтърпя следното:
1. Нишката на сертификлата е прекъсната. Сайта представлява опасност. Тази информация получават всички, които нямат роот сертификата на ИнфоНотари
2. Една камара кликания докато стигна до страницата със справката за регистрираните лица.
3. Трябва да въведа символи , които не са от родната ми азбука и са доста трудни за разпознаване, за да получа информацията на кого е този Булстат (за да изпиша правилно името на фирмата във фактурата).
Алтернативно мога да отида на http://ec.europa.eu/taxation_customs/vies/vieshome.do и от европейския сайт ще получа същата информация без CAPTCHA?
Повярвайте ми, това което става напоследък с тази CAPTCHA по държавните сайтове е безумие!!! Има го същото и в търговския регистър. За сметка на това в платените продукти, АПИС, СИЕЛА, ДАКСИ … няма подобни глупости. На нали целта на държавата не е да брани бизнеса на правно-информационите системи?
В момента на писането на този коментар, реших да проверя как е в другите страни. Взех за пример Ирландия, защото тя е малка държава (пък и аз освен български само английски знам) и за 3 минути открих това: http://www.cro.ie/search/
Съвсем очаквано:
1. Ирландците не използват CAPTCHA
2. Справките не се правят през https , а през http
В резюме: Защо държавата крие публичната информация зад CAPTCHA?
Благодаря за изчерпателният коментар. Ще се опитам да разясня някои положения.
Първо, напълно съм съгласен, че на много места в администрацията идеята на captcha-та е силно неразбрана. Като започнем от използването на in house имплементации с ниска сигурност и стигнем до прилагането й за щяло и не щяло. На captcha-та се гледа по-скоро като възможност за намаляване на натоварването(грешка) и ограничаването на заявките единствено до смислените такива. Говори се и за предпазване от “източване на базата”, което също е със спорен ефект. От гледна точка на разработчика, обаче, рядко има възможност за коментари – има си изисквания от клиента и просто трябва да бъдат изпълнени.
Авторско право с captcha не мисля, че се защитава – дали ще остане в паешкия кеш или някой ще го копира някъде – ами все тая:)
Автоматизираните интерфейси (web services, JSON…) са друга песен и поне за НАП има движение в тази посока. ДДС регистъра е достъпен и в bulk режим от тук. За здравният статус, който пуснахме преди малко, има разработен web service (не от нас), през който ще текат автоматизираните заявки. Предполагам, че ще го пуснат скоро.
Относно SSL-а – идеята тук е не просто да криптираме, а да подсигурим клиентите, че са се свързали точно със сървъра, който търсят и няма да получат фалшива информация. Отделно, при голяма част от услугите, клиентите попълват чувствителна информация – ЕГН-та, адреси и прочие. Нали не искаш това да е видимо с невъоръжено око или да остане по логовете на прокситата (transparent, intercepting, anyone?) ? В това отношение ирландците, ЕС и всички останали, работещи по този начин просто не са ОК. един наш политик казал ония ден, „абе тез, дето пият бира, за да се напият, тръгнали да дават акъл на онези, които с бира си допиваме”;)
Лицензираните CA по българският закон са ясни и няма как да бъдат избегнати. Друг е въпросът, че КРС би трябвало да наложи по-ясни правила при сертифицирането на доставчиците на удостоверителни услуги, както и да съдейства при добавянето им в mainstream продуктите. Само, че аз мисъл в подобна посока не виждам към момента.
Ще е интересно да се чуят и други мнения по въпроса. Аз лично бих съдействал за отстраняването на най-досадните и недомислени неща.
Може би е време да се направи сайт (wiki?), където да се съберат на едно място добрите и лошите практики, които забележим в електронния си контакт с държавната администрация. Заедно ще тежат повече. Ако на някой му е интересно, да пише :)
Според мен идеята за CAPTCHA-та е необмислена (или злоумислена), а не неразбрана.
Когато правим справки в публичен регистър, защо трябва да я има?
– пестим ресурси? Опитът ми на собственик на сайт с повече от 0.5 мил. регистрирани потребители и 200 000 хита (без ботовете) на ден показва, че инвестиция от 15 000 лв. се оправя без проблеми с всичко това. Защо да се пазим от безсмислените заявки, като с това прецакваме и реалните потребители?
– Авторско право: според мен, както всички нормативни документи, така и публичните бази данни , създадени въз основа на нормативни документи трябва да не попадат под защитата му.
– Ако аз съм на мястото на разработчика, ще се опитам да убедя възложителя, че CAPTCHA-та е хубава при регистрация или публикуване на данни, но е напълно безсмислена при справки.
http://nra.bg/vatbulletin – не работи. Object not found!
Относно SSL.
Отново това е технология, която не трябва да се използва за справки. Когато търсиш в Google също оставяш следи какво си търсил. Защо обаче Google не използват SSL в търсачката си?
Защо не се използват сертификати от сертификатори, чийто руут сертификати присъстват в най-разпространените браузъри?
Най-малкото, което трябва да се направи е поне да има информация, какво трябва да си инсталираш за да работиш със съответния сайт.
Пак повтарям, че частта, която използва SSL трябва да е само за чувствителните данни, а не за справките.
По отношение на ЕС, Ирландия и т.н. аз съм на точно обратното мнение. Много повече не искам акъл от нашия политик, а предпочитам да взема опита от Западна Европа и САЩ. Много пъти съм ходил в такива държави и бих искал в България да е като при тях. Доста приятели ще отгледат децата си в такива страни, а не в България или Афганистан, където талибаните също не харесват западната култура.
Наистина, въпрос на обем и технически възможности е. За 4 дена (1-4 февруари) към двата приложни сървъра за електронни услуги на НАП има 290М хита. Тук инвестицията трябва да е малко по-различна:) А железата въвсем не са пъва младост.
Идеята зад SSL-а беше не само да криптира, но и да си СИГУРЕН, че извличаш данните от правилното място. Когато става въпрос за услуги(справки) от типа на здравен статус, попълване на данъчни декларации и пр., вече без криптиране си е престъпно – разнасят се лични данни, числа и т.н.
vatbuletin не работи, защото не работи основната страница на НАП. Там имат отношение колегите от една друга фирма и не ми се коментира…
Относно: Хитовете
Любопитно ми е какво точно представляват тези 280М хитове – заявки за отделни страници или отделни заявки, в т.ч. и картинки, javascript, css, ajax заявки …? Имате ли информация колко справки се генерират, и от колко уникални IP?
Относно: SSL
SSL сам по себе си не дава гаранция, че този с когото комуникираш е този с когото си мислиш. Изтеглянето на роот сертификата на сертификатора, който е удостоверил сертификата на сайта от самия сайт НЕ Е по правилата на Public Key Infrastructure. Кой закон изисква при предоставянето на подобни услуги да се използват сертификати от български “доставчици” на PKI, а не на такива, чийто сертификати присъстват в браузърите още при инсталация? $500 е цената за един сайт на година на подобен сертификат от всеобщо признат PKI доставчик. Закона за “Електронния подпис” приравнява българските сертификати към писмен подпис, обаче такъв не се изисква, когато се прави електронна справка.
Бизнес логиката е да се защитават с SSL чувствителни данни. Например документите за даден търг. Ако е решено, че здравноосигурителния статус на гражданите на РБГ е публична информация (което аз приветствам) тогава трябва да има лесен начин за достъп до нея. SSL (с несигурен сертификат) + CAPTCHA с 2 думи на латински НЕ СА лесен достъп. А колко по-добре би било, ако има web api, така че, ако съм производител на софтуер за лекарски практики да мога да интегрирам в моята система информацията от публичната база. Разбира се web api-то няма да дава името на човека, а са да/не спрямо номер на лична карта. Може и да не е анонимно, а да изисква регистрация и да допуска определен брой заявки на даден акаунт.
Абсолютно съм съгласен, че има редица услуги за които SSL е абсолютно задължителен. Но не може в един кюп да се слагат справки за здравно-осигурителен статус и кандидатстване по обществени поръчки.
Относно: Личната информация
Със защитата на личните данни в България се спекулира, т.е. надценява се необходимостта личните данни да се крият. Идеята за скриването на личните данни е добра, обаче е само теория, без практика. Не може да се изгради добре работещо общество, без публична информация за част от личните данни на хората в него. Ние (българите) лесно приемаме да имаме строги закони, които никой не спазва или е невъзможно да бъдат спазени.
Ако искам да науча ЕГН-то на някой, мога просто да отида по време на избори до секцията в която гласува. Ако има фирма, мога да го видя в регистъра, а има и още много места. Според мен Името на човек и ЕГН-то му трябва да са публични, без ограничения. Проблемът на нашето ЕГН съдържа лична информация, която не би трябвало да е публична: дата на раждане, място на раждане, пол. Това е така, защото издаването на ЕГН е де-централизирано. При сегашното развитие на ИТ издаването на ЕГН може спокойно да бъде централизирано и в неговия номер да няма кодирана никаква информация (само контролна сума). По този начин ЕГН + име ще може да се използва спокойно в публични регистри.
Хитовете: разбирай, брой редове в лога на Apache за периода:) Има пълна статистика, по услуги, уникални потребители и пр., но не мога да я споделя тук. Мога смело да заявя, че това е може би най-използваният онлайн ресурс на държавната администрация в момента.
SSL: когато си инсталираш електронният подпис, от предоставеният ти носител трябва да заредиш и базовите сертификати. Това ти дава гаранция, че инсталираш правилните такива. Не ми се струва технически издържано да има два сървъра(или ферми), едните с българските CA сървърни сертификати, другите с чуждите. По-скоро, както бях писъл по-горе, КРС трябва да съдейства за добавянето на нашите поне към WebTrust мрежата.
Captcha: има развитие по темата и ако сега погледнеш, ще видиш, че за ДДС регистъра captcha няма. Другата седмица ще опростим и тази за здравният статус. Както писах, уеб сървис има написан, ако на някой му е необходим автоматизиран достъп, трябва да го заяви в НАП-ЦУ. Има смисъл от коментирането по блговете, даде ми някои идеи и отправни точки, които ми помогнаха да прокарам нещата ;)
Накрая за личната информация – въпросът тук е доста дълбок и едва ли ще можем да направим нещо по него в близко бъдеще. Тъпо звучи, но тук трябва да се мине по каналният ред – обществено обсъждане, връзка с депутатите от съответният район и т.н., за да се променят нещата. Тук съм леко скептичен.
Относно: CAPTCHA
Радвам се, ако е-услугите на правителството са станали достъпни. CAPTCHA-та трябва да се използва само, когато бизнес-логиката го налага.
Ако целта ни е да намалим натоварване, генерирано от ботове има и по-чисти начини. Например лесно могат да се ограничат хитовете от едно ИП в рамките на 5 минути (например 1000).
За: SSL
Дискусията тук (в този блог) ме провокира да проверя, как стоят нещата с регистрите на компаниите в други държави на Европа. Както преди отбелязах Ирландския фирмен регистър е без SSL, все пак Ирландия е отличниците в ЕС (имат 8 пъти по-бързо усвояване на еврофондовете от нас), та затова реших да видя как е в другите страни.
Кипър: http://www.drcor.mcit.gov.cy/portal/page/portal/Eforos/dttSearch_en?cn=%25ENIGMA%25
Не използва SSL. Използва wildcard символа % и изскачащи прозорци, което не е признак на добър интерфейс за масови потребител. Но все пак открих фирмата, която търсих за 2 минути.
Чехия: http://www.justice.cz/
Отново никакъв SSL. 10 секунди за да открия една позната фирма. Оказа се обаче, че в Чехия може да има много фирми с едно и също име, но от различни градове.
Дания: http://www.cvr.dk
Отново без SSL, трябваха ми 30 секунди да се сетя къде е търсачката за фирми (горе в ляво) и още 10 секунди да открия фирма от базата ми.
Финландия:
http://www.ytj.fi/english/yrityshaku.aspx?path=1704%3b1736%3b2052&kielikoodi=3
Отново няма SSL за базовото търсене. Срещу заплащане може да се получат сканираните документи на компанията. Намерих фирмата, която търсех за 3 минути, защото не разбрах значението на един чекбокс.
Франция: http://www.infogreffe.fr/infogreffe/index.do
Няма SSL, базова информация (доста подробна) без заплащане, допълнителна срещу заплащане.
Норвегия: http://www.brreg.no/
Лесно намиране на фирма, дава имената на управителя, но не и на собствениците. Разпечатките на документите (или сканирани копия) са срещу заплащане.
Швеция: http://www.allabolag.se/start
Без SSL, лесно откриване на компанията, дори ми даде другите компании на съшитите собственици. Безплатно.
Холандия: http://www.kvk.nl/
Без SSL, но липсва информация за собствениците (а може бу проблема е, че не знам Dutch language)
Люксембург: https://www.rcsl.lu
Това е единствения регистър на който попаднах, който използва SSL. Сертификата на сървъре е от Люксембурски PKI, обаче той е подписан от Cybertrust Global Support Services. Поради тази причина браузърите не правят проблем и всичко върви гладко. Не е ли възможно нашите PKI също да бъдат задължени да си заверят собствените сертификати с някой всеобщо признат и по този начин проблемите ще изчезнат.
Търсенето е лесно, но не дава собствениците. Има друга част, която е достъпна след регистриране.
Опита ми, който имам с нашия Търговски регистър е НАЙ-ЛОШИЯ от всички гореизброени. Сякъш е направен да ми каже, че съм глупав и времето ми не струва нищо. От друга страна той предоставя сякаш повече информация от колкото не нужна. Според мен сканираните документи с подписите трябва да се предоставят само срещу подпис (и евентуално заплащане). Основната база обаче с имената на фирмите, координатите за връзка, данъчните номера и имената на собствениците да се предоставя безплатно и лесно.
Определено има от какво да се поучат колегите, които разработват Търговският ни регистър. Например, могат да се добавят още критерии, по които да се търси. Опредлено интерфейсът не ни е от най-удобните (избирането на checkbox променя captcha-та и пр.)
Съвсем различен е въпроса за това, до кои данни и по каква процедура трябва да се получава достъп. Това е регламентирано законово и едва ли ще се промени настоящото положение.
Аз продължавам да смятам, че в случая SSL-а е абсолютно необходим. В никакъв случай не мисля, че е добра идея търсенето да се извършва по незащитен канал, поради сравнителното лесно изпълнение на атаки от типа DNS spoofing, DNS poisoning, MITM атаки, XSS и пр. В края на краищата DNSSEC не е толкова разпространен, колкото ни се иска. Друг е въпросът от кой CA трябва да е издаден сертификата.
За: SSL
SSL + PKI теоретично е най-добрата технология за сигурен публичен достъп до важно съдържание. На практика обаче понятията “добро”, “по-добро”, “лошо” … са зависими от контекста. Например един познат наскоро си купи много добър джип (защото цените им сега са ниски). На практика обаче, той не е доволен защото се оказа, че строителния предприемач, който е строил жилището му е оставил голям наклон към гаража му, което в съчетание с ниския таван пречи на джипа му да влезе в гаража. И понеже улицата е тясна, той го паркира на 100 метра от къщата си. Сега сутрин му отива половин час да го разрине.
Този, който прави нещо (бизнес) трябва да се съобразява с много неща: технология, закони, общество, култура, удобство за потребителя ….
Към момента ние нямаме PKI инфраструктура, или поне не такава, на която нишката на доверие да не е прекъсната с производителите на браузърите.
Докато този въпрос не се реши, според мен НЕ ТРЯБВА да се използва SSL за данни, достоверността на които не е от критично значение. Още повече, че е възможно лесно да се направи двойно предоставяне на данните – със и без SSL. Нека нотариусите да ползват данните с SSL, а бизнес потребителите, които просто искат да проверят точното име или данъчен номер на фирмата, за да не объркат фактурата – да ползват чист http.
Ако аз трябваше да взема решение по този проблем бих поставил на кантара следните неща:
1. За SSL
– Относителна достоверност на данните. Всъщност DNS poisoning може да свърши работа и при SSL, но следите по-трудно биха се изчистили. Доколкото познавам потребителите, въобще няма да им направи впечатление дали са в SSL сесия или не са.
– Не остават данни в Интернет доставчици/кеш. Но дали това е голям плюс за публични данни?
Против SSL
– Липса на цялостна PKI при използване на сертификати от български доставчици. Много от съвременните браузъри изписват стряскащи съобщения на потребителите ( http://www.clerkendweller.com/posts/2009/ssl-domains-2.png )
– въпреки, че 99% от браузърите поддържат SSL, това си има цена. SSL сесиите с малко по-голяма вероятност се разпадат и са по-бавни. Проблем при достъпа от някои мобилни устройства.
Като поставя на кантара ЗА и ПРОТИВ, към настоящия момент определено ПРОТИВ натежава.
——–
Има и още нещо. По-голямата беда при нас е в културата -операционната система на нашите мозъци. Българската култура е перфектна в условията на оцеляване, обаче е пълна нула като източник на прогрес. Ние смятаме, че високата ограда, решетките по прозорците, алармите по колите, SSL в сайтовете на държавните институции ще помогнат да се намали престъпността. Според мен, тези технически средства създават само дребни предизвикателства пред престъпниците. Истинските средства за ограничаване на измамите са честни и работещи полиция и съд и най-важното – нетолерантно към престъпниците обществено мнение. Тези неща не се постигат с технически средства. Те се резултат от еволюцията на културата.
Разхождал съм се в Халеб – Сирия. Там къщите имат 4-ри метрови стени от бял камък (вероятно варовик). Разхождал съм се и по улиците на Амстердам – там къщите нямат пердета. Директно от улицата можеш да видиш какво правят в хола.
Ние сме по средата …