Tag Archives: FB

САЩ: идва регулиране на политическата реклама онлайн

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/08/07/us_elections/

В САЩ въвеждат по-строги правила за онлайн политическа реклама преди изборите в средата на ноември – в момента на щатско равнище – за да се предотврати повторение на руската намеса, наблюдавана през 2016 г., пише Bloomberg.  Политическите кампании са време за инвестиране на милиони рекламни долари във Facebook Inc., Twitter Inc. и Google Alphabet Inc., поради което щатите, включително Мериленд, Вашингтон и Ню Йорк, оказват по-голям натиск върху технологичните компании за прозрачност на финансирането. И в Калифорния   сенаторите обсъждат законопроект, който  изисква  интернет компаниите да предоставят на обществеността повече информация за   финансирането на политическа реклама.

Kомпаниите преработват собствените си политики, за да предотвратят заплахата от чуждо влияние, но не искат да бъдат обект на предписания как да разкриват информация за рекламите, или да бъдат държани отговорни за точността на тази информация. Наистина забелязва се известно активизиране, Facebook заличи десетки страници  на лоши играчи, използващи фалшиви идентичности, които  са се опитвали да предизвикат политически вълнения.

Публикацията на Bloomberg потвърждава, че се търсят  оптимални решения както на законодателно ниво, така и на  ниво корпоративни политики. Лобистките организации  се стараят да противодействат на надигащата се вълна от законодателни мерки. Точно така е и в Европа.

От гледната точка на обществения интерес решенията продължават да изглеждат трудни: не е докрай ясно възможна ли е ефективна  защита на гражданите, която да не преминава в намеса в личния живот или в цензура.

Гражданите не се чувстват комфортно нито  до държавата, която не се  колебае да цензурира, нито до индустриите, съпротивляващи се на всяко – буквално на всяко –  регулиране.

ЕП: изслушванията по случая Facebook/ Cambridge Analytica

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/08/03/facebook-cambridge-analyti/

След изслушванията на Зукърбърг в Конгреса на САЩ през април 2018 г., вкл. писмените отговори,  след сложните комуникации на Facebook с британския парламент и след явяването на Зукърбърг в Европейския парламент  малко по-късно (22 май 2018 г.),  интересът на законодателите към случая Facebook/ CA продължава.

В Европейския парламент комисията LIBE заедно с други парламентарни комисии проведе три парламентарни изслушвания –

 

Обсъжда се какви промени в политиките си вече е въвел Facebook, ролята на националните регулатори в областта на защитата на личните данни и на избирателните комисии.

По време на първото изслушване се взема предвид  и Opinion 3/2018 EDPS Opinion on online manipulation and personal data

Fake news is…

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/07/09/fake-news-is/

img_0546.jpg

Зукърбърг отказа изслушване  в британския парламент, но с интензивна кампания Facebook се опитва да убеди британците в същото, в което Зукърбърг убеждава парламентите: ограничаваме фалшивите новини с помощта на хора и технология.

Издателите срещу платформите

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/06/13/%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D0%B8%D1%82%D0%B5-%D1%81%D1%80%D0%B5%D1%89%D1%83-%D0%BF%D0%BB%D0%B0%D1%82%D1%84%D0%BE%D1%80%D0%BC%D0%B8%D1%82%D0%B5/

Издателите срещу платформите.

Така изглежда картината.

В Европейския съюз фронтът е отворен по повод Директивата за авторското право. Издателите са се мобилизирали за натиск особено върху ЕП ( при държавите е по-лесно за големите европейски лобисти) – и чакаме 20 юни, за да видим ще успеят ли да се обзаведат с ново сродно право противно на мнението на депутати, академията, неправителствен сектор, експерти на ЕК  (#linktax).

Сега се очертава втори фронт, този път за ролята на платформите.

В Конгреса казаха на Facebook, че е опасност за машината на демократичните избори и ще трябва да вземе мерки – за да не ги вземат държавите. И компанията се задвижи, при това по посока на препоръките за прозрачност. На 23 април – и с оглед идващите избори в САЩ през юни – компанията започна процес на верификация на рекламодателите с цел   прозрачност   на политическите реклами.  Проверява се  самоличност и  пощенски адрес на рекламодателите,  освен това рекламодателите ще трябва да разкрият кой плаща за политическите реклами. Заедно с това Facebook започна да показва платените съобщения – в Ирландия още през април заради референдума, а другаде от юни – Facebook обяви, че възнамерява да добави информация за това, кой плаща за рекламите, дали е гражданин или постоянно пребиваващ  в САЩ или не,  какъв обхват имат платените съобщения – и тази информация ще е в архив, и  в него ще може да се  търси, включително по теми –   абортите, гражданските права, престъпността, икономиката, образованието, околната среда, външната политика, оръжията, здравеопазването, имиграцията, военните, бедността, данъците, тероризма и “ценностите”.

И тогава дойде реакцията. Първо 2000 американски медии в открито писмо възразиха, че новите правила за рекламиране на Facebook не се прилагат само за политически кампании, а  за издатели на новини и за всеки, който иска да постави реклама на платформата, която реклама компанията може да сметне  за политическа. Facebook не е предвидил  освобождаване от новите правила.

В писмото си медиите предлагат Facebook да “освободи  новините от включването в архив и  етикетиране за политическо съдържание. ” На 11 юни подобно писмо до Facebook пристига вече от няколко обединения от Европа и Америка – все по същата  тема за освобождаване от включване в архива заедно с платените политически реклами.

Предлагат се и критерии, по които Facebook да освобождава новинарски организации – с професионален редакционен персонал и проверими източници на средства, включването в проверима асоциация на новините, включително и в седемте групи, подписващи писмото.

 

В отговор на писмото Камбъл Браун от Facebook  заявява: “Ние признаваме, че съдържанието на новини за политиката е различно от политическата реклама и   работим с издателите, за да формираме правилния подход”.

Накратко: на този втори фронт известно  сближаване на позиции има, известна видимост за рекламодателите има, известен напредък има  – но все още виждаме  “контурите само” на новата цифрова медийна екосистема, адекватна за 21 век.

Съд на ЕС: поддържане на фен страница във Facebook и лични данни

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/06/06/eucourt_fb/

Стана известно решение на Съда на ЕС по дело С – 210/16 с предмет преюдициално запитване, отправено на основание член 267 ДФЕС от Bundesverwaltungsgericht (Федерален административен съд, Германия)  в рамките на производство по дело Unabhängiges Landeszentrum für Datenschutz Schleswig-Holstein / Wirtschaftsakademie Schleswig-Holstein GmbH=

Генерален адвокат: Y. Bot, мнението.

Преюдициалното запитване се отнася до тълкуването на Директива 95/46/ЕО   за защита на физическите лица при обработването на лични данни. Отнася се до фен-страница във Facebook. Wirtschaftsakademie предлага услуги за обучение чрез фен страница. Фен страниците представляват потребителски профили, които могат да бъдат конфигурирани във Facebook от частноправни субекти или от предприятия. За целта авторът на фен страницата, след като се регистрира във Facebook, може да използва поддържаната от него платформа, за да се представя на потребителите на тази социална мрежа, както и на посетителите на фен страницата, и за да прави изявления от всякакво естество на пазара на медии и мнения. Администраторите на фен страници могат да получават анонимни статистически данни за посетителите на такива страници с помощта на функция, наречена „Facebook Insight“, която им се предоставя безплатно от Facebook при условия на ползване, които не могат да бъдат променяни. Тези данни се събират с помощта на информационни файлове (наричани по-нататък „бисквитки“), всеки от които съдържа уникален код на потребителя, активен е в продължение на две години и се запазва от Facebook на твърдия диск на компютър или всякакъв друг носител на посетителите на фен страницата. Кодът на потребителя, който може да бъде комбиниран с данните за връзката на регистрираните във Facebook потребители, се събира и обработва в момента на отваряне на фен страниците. В това отношение от акта за преюдициално запитване следва, че нито Wirtschaftsakademie, нито Facebook Ireland Ltd упоменават операцията по запазване и функционирането на тази бисквитка, нито последващото обработване на данните, поне в хода на релевантния в главното производство отрязък от време.

Германски орган за личните данни иска WA да деактивира създадената от него фен страница във Facebook на адрес https://www.facebook.com/wirtschaftsakademie, защото не предупреждава потребителите за бисквитките.   WA смята, че няма такова задължение и че органът е трябвало да предприеме действия пряко срещу Facebook.

В хода на спора Федерален административен съд – Германия решава да спре производството и да постави на Съда следните преюдициални въпроси:

„1)      Трябва ли член 2, буква г) от Директива [95/46] да се тълкува в смисъл, че урежда окончателно и изчерпателно задълженията и отговорността за нарушения на правилата за защита на данните, или — в хипотеза на многостепенни отношения между доставчик и клиент на информация — в рамките на „подходящите мерки“ по член 24 от [тази директива] и на „ефективните правомощия на намеса“ по член 28, параграф 3, второ тире от [същата] е възможно структура, която не е „администратор“ по смисъла на член 2, буква г) от [посочената директива], да носи отговорност за избора на оператор за предлаганата от нея информация?

2)      От задължението на държавите членки по член 17, параграф 2 от Директива [95/46] да предвидят, че когато обработването се извършва от негово име, администраторът трябва „да избере обработващ данните, който осигурява достатъчни гаранции по отношение на мерките за техническа безопасност и организационните мерки, регулиращи обработването, което следва да се извърши“, следва ли a contrario, че при друг вид отношения между доставчик и ползвател, които не са свързани с обработка на лични данни от името на администратора по смисъла на член 2, буква д) от [тази директива], не съществува задължение за полагане на дължимата грижа при избора и такова не [би могло] да се обоснове и по националното право?

3)      В хипотези, в които установено извън Европейския съюз дружество майка поддържа юридически самостоятелни обекти (дъщерни дружества) в различни държави членки, има ли право съгласно член 4 и член 28, параграф 6 от Директива [95/46] надзорният орган на дадена държава членка (в настоящия случай Германия) да упражни правомощията си по член 28, параграф 3 от [същата] спрямо установен на негова територия обект, включително в случаите, когато този обект отговаря единствено за рекламирането и продажбата на рекламни пространства и за други маркетингови мерки, насочени към жителите на тази държава членка, докато съгласно вътрешнокорпоративното разпределение на дейностите за събирането и обработването на лични данни на цялата територия на Европейския съюз и следователно и на територията на другата държава членка (в настоящия случай Германия) отговаря изключително установеният в друга държава членка (в настоящия случай Ирландия) самостоятелен обект (дъщерно дружество), при положение че в действителност решението относно обработката на данни се взема от дружеството майка?

4)      Трябва ли член 4, параграф 1 и член 28, параграф 3 от Директива [95/46] да се тълкуват в смисъл, че в хипотези, в които администраторът има обект на територията на държава членка (в настоящия случай Ирландия) и съществува друг, юридически самостоятелен обект на територията на друга държава членка (в настоящия случай Германия), който по-специално отговаря за продажбата на рекламни пространства и чиято дейност е насочена към жителите на тази държава членка, компетентният надзорен орган в тази друга държава членка (в настоящия случай Германия) може да предприеме мерки и да издаде разпореждания с цел прилагането на законодателството за защита на данните, включително срещу този друг обект (в настоящия случай в Германия), който според вътрешнокорпоративното разпределение на дейностите и отговорностите не отговаря за обработката на данни, или в такава хипотеза мерките и разпорежданията са в компетентността само на надзорния орган на държавата членка (в настоящия случай Ирландия), на чиято територия се намира седалището на структурата, която в рамките на групата отговаря за обработката на данните?

5)      Трябва ли член 4, параграф 1, буква а) и член 28, параграфи 3 и 6 от Директива [95/46] да се тълкуват в смисъл, че в хипотези, в които надзорният орган на държава членка (в настоящия случай Германия) предприема мерки по член 28, параграф 3 от [тази директива] спрямо лице или структура, извършващи дейност на нейна територия, на основание, че не е положена дължимата грижа при избора на участващо в процеса на обработката на данни трето лице (в настоящия случай Facebook), тъй като това трето лице нарушавало законодателството за защита на данните, предприемащият мерки надзорен орган (в настоящия случай Германия) е обвързан с правната преценка относно спазването на правилата на защитата на данните на надзорния орган на другата държава членка, в която е установено отговорното за обработването на данните трето лице (в настоящия случай Ирландия), така че той не може да се отклонява от тази правна преценка, или пък предприемащият мерки надзорен орган (в настоящия случай Германия) може самостоятелно да проверява законосъобразността на обработката на данни от страна на установеното в друга държава членка (в настоящия случай Ирландия) трето лице като предварителен въпрос с оглед на предприемане на неговите собствени действия?

6)      Доколкото предприемащият мерки надзорен орган (в настоящия случай Германия) [би могъл] да извършва самостоятелна проверка: трябва ли член 28, параграф 6, второ изречение от Директива [95/46] да се тълкува в смисъл, че надзорният орган може да упражнява предоставените му по член 28, параграф 3 от [тази директива] ефективни правомощия за намеса спрямо установени на неговата територия лице или структура на основание съвместна отговорност за нарушения на правилата за защита на данните, извършени от установеното в друга държава членка трето лице, само и едва когато предварително е поискал от надзорния орган на тази друга държава членка (в настоящия случай Ирландия) да упражни своите правомощия?“.

Съдът:

Член 2, буква г) от Директивата определя широко понятието „администратор“

Отнася се до субект, който „сам или съвместно с други“ определя целите и средствата за обработването на лични данни, това понятие не препраща непременно към само една структура, а може да се отнася до няколко субекта, участващи в обработването, за всеки от които при това положение съществува задължение да спазва приложимите разпоредби относно защитата на данните.

Facebook Inc., а по отношение на Съюза — Facebook Ireland, трябва да се разглеждат като главните определящи целите и средствата за обработването на личните данни на потребителите на Facebook, както и на лицата, посетили фен страниците, хоствани от Facebook, поради което те попадат в понятието „администратор“ по смисъла на член 2, буква г) от Директива 95/46, което не се поставя под съмнение по настоящото дело.

Wirtschaftsakademie  допринася чрез тази фен страница за определянето, съвместно с Facebook Ireland и Facebook Inc., на целите и средствата за обработването на лични данни на посетителите на тази фен страница, и следователно може също да се счита за „администратор“.

Макар действително статистическите данни за аудиторията, изготвени от Facebook, да се предоставят само на администратора на фен страницата в анонимен вид, това не променя факта, че изготвянето на тези статистически данни се основава на предварителното събиране с помощта на бисквитки, инсталирани от Facebook на компютъра или друго устройство на лицата, които са посетили тази страница, както и на обработването на личните данни на тези посетители за подобни статистически цели.

WA следва да се квалифицира като администратор.

В заключение  Съдът (голям състав) решаваьъефддн:

1)      Член 2, буква г) от Директива 95/46/ЕО на Европейския парламент и на Съвета от 24 октомври 1995 година за защита на физическите лица при обработването на лични данни и за свободното движение на тези данни, трябва да се тълкува в смисъл, че понятието „администратор“ по смисъла на тази разпоредба включва администратора на хоствана от социална мрежа фен страница.

2)      Членове 4 и 28 от Директива 95/46 трябва да се тълкуват в смисъл, че когато установено извън Европейския съюз предприятие има няколко обекта в различни държави членки, надзорният орган на държава членка има право да упражни правомощията си по член 28, параграф 3 от тази директива по отношение на разположен на територията на тази държава членка обект на това предприятие, въпреки че съгласно разпределението на дейностите в рамките на групата, от една страна, обектът отговаря единствено за продажбата на рекламни пространства и за други маркетингови дейности на територията на посочената държава членка, а от друга страна, изключителна отговорност за събирането и обработването на лични данни за цялата територия на Европейския съюз се носи от обект, разположен в друга държава членка.

3)      Член 4, параграф 1, буква а) и член 28, параграфи 3 и 6 от Директива 95/46 трябва да се тълкуват в смисъл, че когато надзорният орган на държава членка възнамерява да упражни по отношение на организация, установена на територията на тази държава членка, правомощията за намеса по член 28, параграф 3 от тази директива заради нарушения на правилата относно защитата на лични данни, допуснати от отговарящото за обработването на тези данни като администратор трето лице със седалище в друга държава членка, този надзорен орган е компетентен да прецени самостоятелно от надзорния орган на последната държава членка законосъобразността на такова обработване на данни и може да упражни правомощията си за намеса по отношение на установената на негова територия организация, без предварително да поиска намесата на надзорния орган на другата държава членка.

 

Отново ме блокираха във Facebook

Post Syndicated from Боян Юруков original https://yurukov.net/blog/2018/block-facebook-2/

За пореден път съм блокиран във Facebook и за втори път причината е, че цитирам с ирония думите на някого друг. В случая коментирах под пост на Йордан Стефанов, който списва „Наука и критично мислене“ и блога 6nine. Поводът беше негово участие при Коритаров, където говори за скорошните протести на антиваксърте срещу задължителния характер на ваксините. В общи линии малко повече може да се каже, отколкото при предишния им протест, но явно има нужда да се повтаря отново и отново. Затова е добре, че Йордан се наема да го прави.

За това си участие си той спечели поредна доза определения из едни групи във фейса. Едно от по-цветущите му изпратих и цитирах под поста му. Ето оригиналния коментар пуснат на стената на един от организаторите на активакс протеста:

Два дни по-късно профилът ми беше блокиран за 24 часа, тъй като коментарът ми не отговарял на стандартите на общността. Ясно съм го означил като цитат, а и от контекста после става ясно. Това, разбира се, няма значение, тъй като алгоритмите не разбират от контекст. Те търсят ключови думи, а в коментара ми определено има няколко притеснителни такива. Затова съм си спечелил и блокиране.

Тъй като статусът на Йордан беше частен, не мисля, че някой е подавал оплаквания конкретно за него. По-скоро са изпращали повече сигнали за мен и други неща, които съм писал. Когато алгоритъмът е хванал въпросната ключова дума, се е задействал. Нещо подобно стана преди две години, когато пак иронизирам мъжкарите, които се пънеха, че бежанците в Германия са били жени, но като стане дума за домашното насилие, всички опорстват. Предвид дебатът за оная конвенция този статус май е все по-актуален.

Интересното в този случай е, че цитираният от мен коментар си стои. Въпреки използването на същите ключови думи и въпреки многобройните докладвания. Моят вече е изтрит. Това всъщност е един дребен пример защо не трябва да се позволява на алгоритми да филтрират съдържание и да раздават наказания. Именно това се готви като законодателство на европейско ниво, но не просто в сферата на интернет тормоза, но и като защитата на интелектуална собственост.

Но в крайна сметка мярката е само за 24 часа и отново ще получа извинение от Fb, както последните пъти. Щом участието на Йордан толкова е подразнило антиваксърите, значи си заслужава да го видите, както и да се насочите към блога му 6nine.

Стратегията на Фейсбук срещу фалшивите новини

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/06/02/fb-8/

В края на май Фейсбук публикува стратегията си срещу фалшивите новини.

Стратегията е в три части:

  • Премахване на профили и съдържание, които нарушават правилата   или правилата   за рекламиране
  • Намаляване на разпространението на неверни новини и  съдържание като clickbait
  • Информиране

Повече за всяка част

Project Floofball and more: Pi pet stuff

Post Syndicated from Janina Ander original https://www.raspberrypi.org/blog/project-floofball-pi-pet-stuff/

It’s a public holiday here today (yes, again). So, while we indulge in the traditional pastime of barbecuing stuff (ourselves, mainly), here’s a little trove of Pi projects that cater for our various furry friends.

Project Floofball

Nicole Horward created Project Floofball for her hamster, Harold. It’s an IoT hamster wheel that uses a Raspberry Pi and a magnetic door sensor to log how far Harold runs.

Project Floofball: an IoT hamster wheel

An IoT Hamsterwheel using a Raspberry Pi and a magnetic door sensor, to see how far my hamster runs.

You can follow Harold’s runs in real time on his ThingSpeak channel, and you’ll find photos of the build on imgur. Nicole’s Python code, as well as her template for the laser-cut enclosure that houses the wiring and LCD display, are available on the hamster wheel’s GitHub repo.

A live-streaming pet feeder

JaganK3 used to work long hours that meant he couldn’t be there to feed his dog on time. He found that he couldn’t buy an automated feeder in India without paying a lot to import one, so he made one himself. It uses a Raspberry Pi to control a motor that turns a dispensing valve in a hopper full of dry food, giving his dog a portion of food at set times.

A transparent cylindrical hopper of dry dog food, with a motor that can turn a dispensing valve at the lower end. The motor is connected to a Raspberry Pi in a plastic case. Hopper, motor, Pi, and wiring are all mounted on a board on the wall.

He also added a web cam for live video streaming, because he could. Find out more in JaganK3’s Instructable for his pet feeder.

Shark laser cat toy

Sam Storino, meanwhile, is using a Raspberry Pi to control a laser-pointer cat toy with a goshdarned SHARK (which is kind of what I’d expect from the guy who made the steampunk-looking cat feeder a few weeks ago). The idea is to keep his cats interested and active within the confines of a compact city apartment.

Raspberry Pi Automatic Cat Laser Pointer Toy

Post with 52 votes and 7004 views. Tagged with cat, shark, lasers, austin powers, raspberry pi; Shared by JeorgeLeatherly. Raspberry Pi Automatic Cat Laser Pointer Toy

If I were a cat, I would definitely be entirely happy with this. Find out more on Sam’s website.

And there’s more

Michel Parreno has written a series of articles to help you monitor and feed your pet with Raspberry Pi.

All of these makers are generous in acknowledging the tutorials and build logs that helped them with their projects. It’s lovely to see the Raspberry Pi and maker community working like this, and I bet their projects will inspire others too.

Now, if you’ll excuse me. I’m late for a barbecue.

The post Project Floofball and more: Pi pet stuff appeared first on Raspberry Pi.

The FBI tells everybody to reboot their router

Post Syndicated from corbet original https://lwn.net/Articles/755741/rss

This CERT
advisory
warns of over 500,000 home routers that have been compromised
by the VPNFilter malware and is advising everybody to reboot their routers
to (partially) remove it. This Talos
Intelligence page
has a lot more information about VPNFilter, though a
lot apparently remains unknown. “At the time of this publication, we
do not have definitive proof on how the threat actor is exploiting the
affected devices. However, all of the affected makes/models that we have
uncovered had well-known, public vulnerabilities. Since advanced threat
actors tend to only use the minimum resources necessary to accomplish their
goals, we assess with high confidence that VPNFilter required no zero-day
exploitation techniques.

Шремс подава оплаквания срещу Google, Facebook, Instagram и WhatsApp

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/05/27/gdpr-schrems/

Макс Шремс подава оплаквания срещу Google, Facebook, Instagram и WhatsApp. Причината е, че според него е незаконен изборът, пред който са изправени потребителите им – да приемат условията на компаниите или да загубят достъп до услугите им.

Подходът “съгласи се или напусни”, казва Шремс пред Reuters Television, нарушава правото на хората съгласно Общия регламент за защита на данните (GDPR) да избират свободно дали да позволят на компаниите да използват данните им. Трябва да има  избор,  смята Шремс.

Шремс е австриецът, който все не е доволен от защитата на личните данни в социалните мрежи и не ги оставя на мира, като превръща борбата си за защита на данните и в професия, юрист е. Този път действа чрез създадена от него неправителствена организация noyb

Independent.ie 

The Guardian

Прозрачност на политическата реклама

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/05/26/polit_ad_fb_twitter/

Как решавате проблем като този с руската пропаганда? Как  предпазвате от намеса в изборите? c|net информира за нови стъпки на интернет компаниите.

Отговорът на Facebook и Twitter е повече прозрачност относно политическата реклама: двете компании предприемат мерки да се вижда кой плаща политическа реклама. Google също се подготвя за подобна политика на прозрачност.

Facebook създава и архив на данните за политическа реклама на адрес facebook.com/politicalcontentads . Подобен  Ads Transparency Center  предстои да бъде създаден и в Twitter.

В САЩ има проект за закон –  the Honest Ads Act –  ако бъде приет,  прозрачността на политическата реклама онлайн ще е законово задължение.

Текст и обяснение от сайта на Конгреса, мотивите: Законът за честните реклами би попречил на чуждестранните участници да повлияят върху нашите избори, като гарантира, че политическите реклами, продавани онлайн, ще бъдат обхванати от същите правила като рекламите, продавани по телевизията, радиото и сателита.  Въвежда

  •  изискване на цифрови платформи с най-малко 50 000 000 месечни зрители да поддържат публичен архив  – всеки файл  ще съдържа цифрово копие на рекламата, описание на аудиторията, която рекламата цели, броя на генерираните показвания, датите и часовете на публикуване, таксуваните тарифи и информацията за връзка на купувача;
  • изискване  онлайн платформите да положат всички разумни усилия, за да гарантират, че чуждестранни физически и юридически лица не купуват политически реклами, за да повлияят на американския електорат.

 

UK soldiers design Raspberry Pi bomb disposal robot

Post Syndicated from Helen Lynn original https://www.raspberrypi.org/blog/uk-soldiers-design-raspberry-pi-bomb-disposal-robot/

Three soldiers in the British Army have used a Raspberry Pi to build an autonomous robot, as part of their Foreman of Signals course.

Meet The Soldiers Revolutionising Bomb Disposal

Three soldiers from Blandford Camp have successfully designed and built an autonomous robot as part of their Foreman of Signals Course at the Dorset Garrison.

Autonomous robots

Forces Radio BFBS carried a story last week about Staff Sergeant Jolley, Sergeant Rana, and Sergeant Paddon, also known as the “Project ROVER” team. As part of their Foreman of Signals training, their task was to design an autonomous robot that can move between two specified points, take a temperature reading, and transmit the information to a remote computer. The team comments that, while semi-autonomous robots have been used as far back as 9/11 for tasks like finding people trapped under rubble, nothing like their robot and on a similar scale currently exists within the British Army.

The ROVER buggy

Their build is named ROVER, which stands for Remote Obstacle aVoiding Environment Robot. It’s a buggy that moves on caterpillar tracks, and it’s tethered; we wonder whether that might be because it doesn’t currently have an on-board power supply. A demo shows the robot moving forward, then changing its path when it encounters an obstacle. The team is using RealVNC‘s remote access software to allow ROVER to send data back to another computer.

Applications for ROVER

Dave Ball, Senior Lecturer in charge of the Foreman of Signals course, comments that the project is “a fantastic opportunity for [the team] to, even only halfway through the course, showcase some of the stuff they’ve learnt and produce something that’s really quite exciting.” The Project ROVER team explains that the possibilities for autonomous robots like this one are extensive: they include mine clearance, bomb disposal, and search-and-rescue campaigns. They point out that existing semi-autonomous hardware is not as easy to program as their build. In contrast, they say, “with the invention of the Raspberry Pi, this has allowed three very inexperienced individuals to program a robot very capable of doing these things.”

We make Raspberry Pi computers because we want building things with technology to be as accessible as possible. So it’s great to see a project like this, made by people who aren’t techy and don’t have a lot of computing experience, but who want to solve a problem and see that the Pi is an affordable and powerful tool that can help.

The post UK soldiers design Raspberry Pi bomb disposal robot appeared first on Raspberry Pi.

Police Arrest Suspected Member of TheDarkOverlord Hacking Group

Post Syndicated from Andy original https://torrentfreak.com/police-arrest-suspected-member-of-the-dark-overlord-hacking-group-180517/

In April 2017, the first episode of the brand new season of Netflix’s Orange is the New Black was uploaded to The Pirate Bay, months ahead of its official release date.

The leak was the work of a hacking entity calling itself TheDarkOverlord (TDO). One of its members had contacted TorrentFreak months earlier claiming that the content was in its hands but until the public upload, nothing could be confirmed.

TDO told us it had obtained the episodes after hacking the systems of Hollywood-based Larson Studios, an ADR (additional dialogue recorded) studio, back in 2016. TDO had attempted to blackmail the company into paying a bitcoin ransom but when it wasn’t forthcoming, TDO pressed the nuclear button.

Netflix responded by issuing a wave of takedown notices but soon TDO moved onto a new target. In June 2017, TDO followed up on an earlier threat to leak content owned by ABC.

But while TDO was perhaps best known for its video-leaking exploits, the group’s core ‘business’ was hacking what many perceived to be softer targets. TDO ruthlessly slurped confidential data from weakly protected computer systems at medical facilities, private practices, and businesses large and small.

In each case, the group demanded ransoms in exchange for silence and leaked sensitive data to the public if none were paid. With dozens of known targets, TDO found itself at the center of an international investigation, led by the FBI. That now appears to have borne some fruit, with the arrest of an individual in Serbia.

Serbian police say that members of its Ministry of Internal Affairs, Criminal Police Directorate (UCC), in coordination with the Special Prosecution for High-Tech Crime, have taken action against a suspected member of TheDarkOverlord group.

Police say they tracked down a Belgrade resident, who was arrested and taken into custody. Identified only by the initials “S.S”, police say the individual was born in 1980 but have released no further personal details. A search of his apartment and other locations led to the seizure of items of digital equipment.

“According to the order of the Special Prosecutor’s Office for High-Tech Crime, criminal charges will be brought against him because of the suspicion that he committed the criminal offense of unauthorized access to a protected computer, computer networks and electronic processing, and the criminal offense of extortion,” a police statement reads.

In earlier correspondence with TF, the TDO member always gave the impression of working as part of a team but we only had a single contact point which appeared to be the same person. However, Serbian authorities say the larger investigation is aimed at uncovering “a large number of people” who operate under the banner of “TheDarkOverlord”.

Since June 2016, the group is said to have targeted at least 50 victims while demanding bitcoin ransoms to avoid disclosure of their content. Serbian authorities say that on the basis of available data, TDO received payments of more than $275,000.

Source: TF, for the latest info on copyright, file-sharing, torrent sites and more. We also have VPN reviews, discounts, offers and coupons.

Зукърбърг е приел поканата на Европейския парламент, но няма да има публично изслушване

Post Syndicated from nellyo original https://nellyo.wordpress.com/2018/05/17/fb_ep_transp/

Вера Йоурова, член на ЕК – Антонио Таяни, председател на ЕП – и брюкселска журналистка обменят мисли в Туитър.  Зукърбърг пристига в Брюксел “вероятно следващата седмица” – но няма да има публично изслушване, казва Йоурова.  – Не е ваша работа, казва Таяни.  – Гласувани сте от нас, наша работа е, пише Дженифър Бейкър (@BrusselsGeek) – Говоря на Йоурова, пояснява Таяни.

.

 

 

 

 

 

 

Roku Displays FBI Anti-Piracy Warning to Legitimate YouTube & Netflix Users

Post Syndicated from Andy original https://torrentfreak.com/roku-displays-fbi-anti-piracy-warning-to-legitimate-youtube-netflix-users-180516/

In 2018, dealing with copyright infringement claims is a daily issue for many content platforms. The law in many regions demands swift attention and in order to appease copyright holders, most platforms are happy to oblige.

While it’s not unusual for ‘pirate’ content and services to suddenly disappear in response to a DMCA or similar notice, the same is rarely true for entire legitimate services.

But that’s what appeared to happen on the Roku platform during the night, when YouTube, Netflix and other channels disappeared only to be replaced with an ominous anti-piracy warning.

As the embedded tweet shows, the message caused confusion among Roku users who were only using their devices to access legal content. Messages replacing Netflix and YouTube seemed to have caused the greatest number of complaints but many other services were affected.

FoxSportsGo, FandangoNow, and India-focused YuppTV and Hotstar were also blacked out. As were the yoga and transformational videos specialists over at Gaia, the horror buffs at ChillerFlix, and UK TV service BritBox.

But while users scratched their heads, with some misguidedly blaming Roku for not being diligent enough against piracy, Roku took to Twitter to reveal that rather than anti-piracy complaints against the channels in question, a technical hitch was to blame.

However, a subsequent statement to CNET suggested that while blacking out Netflix and YouTube might have been accidental, Roku appears to have been taking anti-piracy action against another channel or channels at the time, with the measures inadvertently spilling over to innocent parties.

“We use that warning when we detect content that has violated copyright,” Roku said in a statement.

“Some channels in our Channel Store displayed that message and became inaccessible after Roku implemented a targeted anti-piracy measure on the platform.”

The precise nature of the action taken by Roku is unknown but it’s clear that copyright infringement is currently a hot topic for the platform.

Roku is currently fighting legal action in Mexico which ordered its products off the shelves following complaints that its platform is used by pirates. That led to an FBI warning being shown for what was believed to be the first time against the XTV and other channels last year.

This March, Roku took action against the popular USTVNow channel following what was described as a “third party” copyright infringement complaint. Just a couple of weeks later, Roku followed up by removing the controversial cCloud channel.

With Roku currently fighting to have sales reinstated in Mexico against a backdrop of claims that up to 40% of its users are pirates, it’s unlikely that Roku is suddenly going to go soft on piracy, so more channel outages can be expected in the future.

In the meantime, the scary FBI warnings of last evening are beginning to fade away (for legitimate channels at least) after the company issued advice on how to fix the problem.

“The recent outage which affected some channels has been resolved. Go to Settings > System > System update > Check now for a software update. Some channels may require you to log in again. Thank you for your patience,” the company wrote in an update.

Source: TF, for the latest info on copyright, file-sharing, torrent sites and more. We also have VPN reviews, discounts, offers and coupons.

2018-05-03 python, multiprocessing, thread-ове и забивания

Post Syndicated from Vasil Kolev original https://vasil.ludost.net/blog/?p=3384

Всеки ден се убеждавам, че нищо не работи.

Открих забавен проблем с python и multiprocessing, който в момента още не мога да реша чий проблем е (в крайна сметка ще се окаже мой). Отне ми прилично количество време да го хвана и си струва да го разкажа.

Малко предистория: ползваме influxdb, в което тъпчем бая секундни данни, които после предъвкваме до минутни. InfluxDB има continuous queries, които вършат тази работа – на някакъв интервал от време хващат новите данни и ги сгъват. Тези заявки имаха няколко проблема:
– не се оправят с попълване на стари данни;
– изпълняват се рядко и минутните данни изостават;
– изпълняват се в общи линии в един thread, което кара минутните данни да изостават още повече (в нашия случай преди да ги сменим с около 12 часа).

Хванаха ме дяволите и си написах просто демонче на python, което да събира информация за различните бази какви данни могат да се сгънат, и паралелно да попълва данните. Работи в общи линии по следния начин:
– взима списък с базите данни
– пуска през multiprocessing-а да се събере за всяка база какви заявки трябва да се пуснат, на база на какви measurement-и има и докога са минутните и секундните данни в тях;
– пуска през multiprocessing-а събраните от предния pass заявки
– и така до края на света (или докато зависне).

След като навакса за няколко часа, успяваше да държи минутните данни в рамките на няколко минути от последните секундни данни, което си беше сериозно подобрение на ситуацията. Единственият проблем беше, че от време на време спираше да process-ва и увисваше.

Днес намерих време да го прегледам внимателно какво му се случва. Процесът изглежда като един parent и 5 fork()-нати child-а, като:
Parent-а спи във futex 0x22555a0;
Child 18455 във futex 0x7fdbfa366000;
Child 18546 read
Child 18457 във futex 0x7fdbfa366000
Child 18461 във futex 0x7fdbfa366000
Child 18462 във futex 0x7fdbfa366000
Child 18465 във futex 0x7fdbf908c2c0

Това не беше особено полезно, и се оказа, че стандартния python debugger (pdb) не може да се закача за съществуващи процеси, но за сметка на това gdb с подходящи debug символи може, и може да дава доста полезна информация. По този начин открих, че parent-а чака един child да приключи работата си:


#11 PyEval_EvalFrameEx (
[email protected]=Frame 0x235fb80, for file /usr/lib64/python2.7/multiprocessing/pool.py, line 543, in wait (self== 1525137960000000000 AND time < 1525138107000000000 GROUP BY time(1m), * fill(linear)\' in a read only context, please use a POST request instead', u'level': u'warning'}], u'statement_id': 0}]}, None], _callback=None, _chunksize=1, _number_left=1, _ready=False, _success=True, _cond=<_Condition(_Verbose__verbose=False, _Condition__lock=, acquire=, _Condition__waiters=[], release=) at remote 0x7fdbe0015310>, _job=45499, _cache={45499: < ...>}) a...(truncated), [email protected]=0) at /usr/src/debug/Python-2.7.5/Python/ceval.c:3040

Като в pool.py около ред 543 има следното:


class ApplyResult(object):

...

def wait(self, timeout=None):
self._cond.acquire()
try:
if not self._ready:
self._cond.wait(timeout)
finally:
self._cond.release()

Първоначално си мислех, че 18546 очаква да прочете нещо от грешното място, но излезе, че това е child-а, който е спечелил състезанието за изпълняване на следващата задача и чака да му я дадат (което изглежда се раздава през futex 0x7fdbfa366000). Един от child-овете обаче чака в друг lock:


(gdb) bt
#0 __lll_lock_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
#1 0x00007fdbf9b68dcb in _L_lock_812 () from /lib64/libpthread.so.0
#2 0x00007fdbf9b68c98 in __GI___pthread_mutex_lock ([email protected]=0x7fdbf908c2c0 ) at ../nptl/pthread_mutex_lock.c:79
#3 0x00007fdbf8e846ea in _nss_files_gethostbyname4_r ([email protected]=0x233fa44 "localhost", [email protected]=0x7fdbecfcb8e0, [email protected]=0x7fdbecfcb340 "hZ \372\333\177",
[email protected]=1064, [email protected]=0x7fdbecfcb8b0, [email protected]=0x7fdbecfcb910, [email protected]=0x0) at nss_files/files-hosts.c:381
#4 0x00007fdbf9170ed8 in gaih_inet (name=, [email protected]=0x233fa44 "localhost", service=, [email protected]=0x7fdbecfcbb90, [email protected]=0x7fdbecfcb9f0,
[email protected]=0x7fdbecfcb9e0) at ../sysdeps/posix/getaddrinfo.c:877
#5 0x00007fdbf91745cd in __GI_getaddrinfo ([email protected]=0x233fa44 "localhost", [email protected]=0x7fdbecfcbbc0 "8086", [email protected]=0x7fdbecfcbb90, [email protected]=0x7fdbecfcbb78)
at ../sysdeps/posix/getaddrinfo.c:2431
#6 0x00007fdbeed8760d in socket_getaddrinfo (self=
, args=) at /usr/src/debug/Python-2.7.5/Modules/socketmodule.c:4193
#7 0x00007fdbf9e5fbb0 in call_function (oparg=
, pp_stack=0x7fdbecfcbd10) at /usr/src/debug/Python-2.7.5/Python/ceval.c:4408
#8 PyEval_EvalFrameEx (
[email protected]=Frame 0x7fdbe8013350, for file /usr/lib/python2.7/site-packages/urllib3/util/connection.py, line 64, in create_connection (address=('localhost', 8086), timeout=3000, source_address=None, socket_options=[(6, 1, 1)], host='localhost', port=8086, err=None), [email protected]=0) at /usr/src/debug/Python-2.7.5/Python/ceval.c:3040

(gdb) frame 3
#3 0x00007fdbf8e846ea in _nss_files_gethostbyname4_r ([email protected]=0x233fa44 "localhost", [email protected]=0x7fdbecfcb8e0, [email protected]=0x7fdbecfcb340 "hZ \372\333\177",
[email protected]=1064, errnop=errno[email protected]=0x7fdbecfcb8b0, [email protected]=0x7fdbecfcb910, [email protected]=0x0) at nss_files/files-hosts.c:381
381 __libc_lock_lock (lock);
(gdb) list
376 enum nss_status
377 _nss_files_gethostbyname4_r (const char *name, struct gaih_addrtuple **pat,
378 char *buffer, size_t buflen, int *errnop,
379 int *herrnop, int32_t *ttlp)
380 {
381 __libc_lock_lock (lock);
382
383 /* Reset file pointer to beginning or open file. */
384 enum nss_status status = internal_setent (keep_stream);
385

Или в превод – опитваме се да вземем стандартния lock, който libc-то използва за да си пази reentrant функциите, и някой го държи. Кой ли?


(gdb) p lock
$3 = {__data = {__lock = 2, __count = 0, __owner = 16609, __nusers = 1, __kind = 0, __spins = 0, __elision = 0, __list = {__prev = 0x0, __next = 0x0}},
__size = "\002\000\000\000\000\000\000\000\[email protected]\000\000\001", '\000' , __align = 2}
(gdb) p &lock
$4 = (__libc_lock_t *) 0x7fdbf908c2c0

Тук се вижда как owner-а на lock-а всъщност е parent-а. Той обаче не смята, че го държи:


(gdb) p lock
$2 = 0
(gdb) p &lock
$3 = (__libc_lock_t *) 0x7fdbf9450df0
(gdb) x/20x 0x7fdbf9450df0
0x7fdbf9450df0
: 0x00000000 0x00000000 0x00000000 0x00000000
0x7fdbf9450e00 <__abort_msg>: 0x00000000 0x00000000 0x00000000 0x00000000
0x7fdbf9450e10 : 0x00000000 0x00000000 0x00000000 0x00000000
0x7fdbf9450e20 : 0x00000000 0x00000000 0x00000000 0x00000000
0x7fdbf9450e30 : 0x001762c9 0x00000000 0x00000000 0x00000000

… което е и съвсем очаквано, при условие, че са два процеса и тая памет не е обща.

Та, явно това, което се е случило е, че докато parent-а е правел fork(), тоя lock го е държал някой, и child-а реално не може да пипне каквото и да е, свързано с него (което значи никакви reentrant функции в glibc-то, каквито па всички ползват (и би трябвало да ползват)). Въпросът е, че по принцип това не би трябвало да е възможно, щото около fork() няма нищо, което да взима тоя lock, и би трябвало glibc да си освобождава lock-а като излиза от функциите си.

Първоначалното ми идиотско предположение беше, че в signal handler-а на SIGCHLD multiprocessing модула създава новите child-ове, и така докато нещо друго държи lock-а идва сигнал, прави се нов процес и той го “наследява” заключен. Това беше твърде глупаво, за да е истина, и се оказа, че не е…

Около въпросите с lock-а бях стигнал с търсене до две неща – issue 127 в gperftools и Debian bug 657835. Първото каза, че проблемът ми може да е от друг lock, който някой друг държи преди fork-а (което ме накара да се загледам по-внимателно какви lock-ове се държат), а второто, че като цяло ако fork-ваш thread-нато приложение, може после единствено да правиш execve(), защото всичко друго не е ясно колко ще работи.

И накрая се оказа, че ако се ползва multiprocessing модула, той пуска в главния процес няколко thread-а, които да се занимават със следенето и пускането на child-ове за обработка. Та ето какво реално се случва:

– някой child си изработва нужния брой операции и излиза
– parent-а получава SIGCHLD и си отбелязва, че трябва да види какво става
– главния thread на parent-а тръгва да събира списъка бази, и вика в някакъв момент _nss_files_gethostbyname4_r, който взима lock-а;
– по това време другия thread казва “а, нямам достатъчно child-ове, fork()”
– profit.

Текущото ми глупаво решение е да не правя нищо в главния thread, което може да взима тоя lock и да се надявам, че няма още някой такъв. Бъдещото ми решение е или да го пиша на python3 с някой друг модул по темата, или на go (което ще трябва да науча).

Secure Build with AWS CodeBuild and LayeredInsight

Post Syndicated from Asif Khan original https://aws.amazon.com/blogs/devops/secure-build-with-aws-codebuild-and-layeredinsight/

This post is written by Asif Awan, Chief Technology Officer of Layered InsightSubin Mathew – Software Development Manager for AWS CodeBuild, and Asif Khan – Solutions Architect

Enterprises adopt containers because they recognize the benefits: speed, agility, portability, and high compute density. They understand how accelerating application delivery and deployment pipelines makes it possible to rapidly slipstream new features to customers. Although the benefits are indisputable, this acceleration raises concerns about security and corporate compliance with software governance. In this blog post, I provide a solution that shows how Layered Insight, the pioneer and global leader in container-native application protection, can be used with seamless application build and delivery pipelines like those available in AWS CodeBuild to address these concerns.

Layered Insight solutions

Layered Insight enables organizations to unify DevOps and SecOps by providing complete visibility and control of containerized applications. Using the industry’s first embedded security approach, Layered Insight solves the challenges of container performance and protection by providing accurate insight into container images, adaptive analysis of running containers, and automated enforcement of container behavior.

 

AWS CodeBuild

AWS CodeBuild is a fully managed build service that compiles source code, runs tests, and produces software packages that are ready to deploy. With CodeBuild, you don’t need to provision, manage, and scale your own build servers. CodeBuild scales continuously and processes multiple builds concurrently, so your builds are not left waiting in a queue. You can get started quickly by using prepackaged build environments, or you can create custom build environments that use your own build tools.

 

Problem Definition

Security and compliance concerns span the lifecycle of application containers. Common concerns include:

Visibility into the container images. You need to verify the software composition information of the container image to determine whether known vulnerabilities associated with any of the software packages and libraries are included in the container image.

Governance of container images is critical because only certain open source packages/libraries, of specific versions, should be included in the container images. You need support for mechanisms for blacklisting all container images that include a certain version of a software package/library, or only allowing open source software that come with a specific type of license (such as Apache, MIT, GPL, and so on). You need to be able to address challenges such as:

·       Defining the process for image compliance policies at the enterprise, department, and group levels.

·       Preventing the images that fail the compliance checks from being deployed in critical environments, such as staging, pre-prod, and production.

Visibility into running container instances is critical, including:

·       CPU and memory utilization.

·       Security of the build environment.

·       All activities (system, network, storage, and application layer) of the application code running in each container instance.

Protection of running container instances that is:

·       Zero-touch to the developers (not an SDK-based approach).

·       Zero touch to the DevOps team and doesn’t limit the portability of the containerized application.

·       This protection must retain the option to switch to a different container stack or orchestration layer, or even to a different Container as a Service (CaaS ).

·       And it must be a fully automated solution to SecOps, so that the SecOps team doesn’t have to manually analyze and define detailed blacklist and whitelist policies.

 

Solution Details

In AWS CodeCommit, we have three projects:
●     “Democode” is a simple Java application, with one buildspec to build the app into a Docker container (run by build-demo-image CodeBuild project), and another to instrument said container (instrument-image CodeBuild project). The resulting container is stored in ECR repo javatestasjavatest:20180415-layered. This instrumented container is running in AWS Fargate cluster demo-java-appand can be seen in the Layered Insight runtime console as the javatestapplication in us-east-1.
●     aws-codebuild-docker-imagesis a clone of the official aws-codebuild-docker-images repo on GitHub . This CodeCommit project is used by the build-python-builder CodeBuild project to build the python 3.3.6 codebuild image and is stored at the codebuild-python ECR repo. We then manually instructed the Layered Insight console to instrument the image.
●     scan-java-imagecontains just a buildspec.yml file. This file is used by the scan-java-image CodeBuild project to instruct Layered Assessment to perform a vulnerability scan of the javatest container image built previously, and then run the scan results through a compliance policy that states there should be no medium vulnerabilities. This build fails — but in this case that is a success: the scan completes successfully, but compliance fails as there are medium-level issues found in the scan.

This build is performed using the instrumented version of the Python 3.3.6 CodeBuild image, so the activity of the processes running within the build are recorded each time within the LI console.

Build container image

Create or use a CodeCommit project with your application. To build this image and store it in Amazon Elastic Container Registry (Amazon ECR), add a buildspec file to the project and build a container image and create a CodeBuild project.

Scan container image

Once the image is built, create a new buildspec in the same project or a new one that looks similar to below (update ECR URL as necessary):

version: 0.2
phases:
  pre_build:
    commands:
      - echo Pulling down LI Scan API client scripts
      - git clone https://github.com/LayeredInsight/scan-api-example-python.git
      - echo Setting up LI Scan API client
      - cd scan-api-example-python
      - pip install layint_scan_api
      - pip install -r requirements.txt
  build:
    commands:
      - echo Scanning container started on `date`
      - IMAGEID=$(./li_add_image --name <aws-region>.amazonaws.com/javatest:20180415)
      - ./li_wait_for_scan -v --imageid $IMAGEID
      - ./li_run_image_compliance -v --imageid $IMAGEID --policyid PB15260f1acb6b2aa5b597e9d22feffb538256a01fbb4e5a95

Add the buildspec file to the git repo, push it, and then build a CodeBuild project using with the instrumented Python 3.3.6 CodeBuild image at <aws-region>.amazonaws.com/codebuild-python:3.3.6-layered. Set the following environment variables in the CodeBuild project:
●     LI_APPLICATIONNAME – name of the build to display
●     LI_LOCATION – location of the build project to display
●     LI_API_KEY – ApiKey:<key-name>:<api-key>
●     LI_API_HOST – location of the Layered Insight API service

Instrument container image

Next, to instrument the new container image:

  1. In the Layered Insight runtime console, ensure that the ECR registry and credentials are defined (click the Setup icon and the ‘+’ sign on the top right of the screen to add a new container registry). Note the name given to the registry in the console, as this needs to be referenced in the li_add_imagecommand in the script, below.
  2. Next, add a new buildspec (with a new name) to the CodeCommit project, such as the one shown below. This code will download the Layered Insight runtime client, and use it to instruct the Layered Insight service to instrument the image that was just built:
    version: 0.2
    phases:
    pre_build:
    commands:
    echo Pulling down LI API Runtime client scripts
    git clone https://github.com/LayeredInsight/runtime-api-example-python
    echo Setting up LI API client
    cd runtime-api-example-python
    pip install layint-runtime-api
    pip install -r requirements.txt
    build:
    commands:
    echo Instrumentation started on `date`
    ./li_add_image --registry "Javatest ECR" --name IMAGE_NAME:TAG --description "IMAGE DESCRIPTION" --policy "Default Policy" --instrument --wait --verbose
  3. Commit and push the new buildspec file.
  4. Going back to CodeBuild, create a new project, with the same CodeCommit repo, but this time select the new buildspec file. Use a Python 3.3.6 builder – either the AWS or LI Instrumented version.
  5. Click Continue
  6. Click Save
  7. Run the build, again on the master branch.
  8. If everything runs successfully, a new image should appear in the ECR registry with a -layered suffix. This is the instrumented image.

Run instrumented container image

When the instrumented container is now run — in ECS, Fargate, or elsewhere — it will log data back to the Layered Insight runtime console. It’s appearance in the console can be modified by setting the LI_APPLICATIONNAME and LI_LOCATION environment variables when running the container.

Conclusion

In the above blog we have provided you steps needed to embed governance and runtime security in your build pipelines running on AWS CodeBuild using Layered Insight.

 

 

 

No, Ray Ozzie hasn’t solved crypto backdoors

Post Syndicated from Robert Graham original https://blog.erratasec.com/2018/04/no-ray-ozzie-hasnt-solved-crypto.html

According to this Wired article, Ray Ozzie may have a solution to the crypto backdoor problem. No, he hasn’t. He’s only solving the part we already know how to solve. He’s deliberately ignoring the stuff we don’t know how to solve. We know how to make backdoors, we just don’t know how to secure them.

The vault doesn’t scale

Yes, Apple has a vault where they’ve successfully protected important keys. No, it doesn’t mean this vault scales. The more people and the more often you have to touch the vault, the less secure it becomes. We are talking thousands of requests per day from 100,000 different law enforcement agencies around the world. We are unlikely to protect this against incompetence and mistakes. We are definitely unable to secure this against deliberate attack.

A good analogy to Ozzie’s solution is LetsEncrypt for getting SSL certificates for your website, which is fairly scalable, using a private key locked in a vault for signing hundreds of thousands of certificates. That this scales seems to validate Ozzie’s proposal.

But at the same time, LetsEncrypt is easily subverted. LetsEncrypt uses DNS to verify your identity. But spoofing DNS is easy, as was recently shown in the recent BGP attack against a cryptocurrency. Attackers can create fraudulent SSL certificates with enough effort. We’ve got other protections against this, such as discovering and revoking the SSL bad certificate, so while damaging, it’s not catastrophic.

But with Ozzie’s scheme, equivalent attacks would be catastrophic, as it would lead to unlocking the phone and stealing all of somebody’s secrets.

In particular, consider what would happen if LetsEncrypt’s certificate was stolen (as Matthew Green points out). The consequence is that this would be detected and mass revocations would occur. If Ozzie’s master key were stolen, nothing would happen. Nobody would know, and evildoers would be able to freely decrypt phones. Ozzie claims his scheme can work because SSL works — but then his scheme includes none of the many protections necessary to make SSL work.

What I’m trying to show here is that in a lab, it all looks nice and pretty, but when attacked at scale, things break down — quickly. We have so much experience with failure at scale that we can judge Ozzie’s scheme as woefully incomplete. It’s not even up to the standard of SSL, and we have a long list of SSL problems.

Cryptography is about people more than math

We have a mathematically pure encryption algorithm called the “One Time Pad”. It can’t ever be broken, provably so with mathematics.

It’s also perfectly useless, as it’s not something humans can use. That’s why we use AES, which is vastly less secure (anything you encrypt today can probably be decrypted in 100 years). AES can be used by humans whereas One Time Pads cannot be. (I learned the fallacy of One Time Pad’s on my grandfather’s knee — he was a WW II codebreaker who broke German messages trying to futz with One Time Pads).

The same is true with Ozzie’s scheme. It focuses on the mathematical model but ignores the human element. We already know how to solve the mathematical problem in a hundred different ways. The part we don’t know how to secure is the human element.

How do we know the law enforcement person is who they say they are? How do we know the “trusted Apple employee” can’t be bribed? How can the law enforcement agent communicate securely with the Apple employee?

You think these things are theoretical, but they aren’t. Consider financial transactions. It used to be common that you could just email your bank/broker to wire funds into an account for such things as buying a house. Hackers have subverted that, intercepting messages, changing account numbers, and stealing millions. Most banks/brokers require additional verification before doing such transfers.

Let me repeat: Ozzie has only solved the part we already know how to solve. He hasn’t addressed these issues that confound us.

We still can’t secure security, much less secure backdoors

We already know how to decrypt iPhones: just wait a year or two for somebody to discover a vulnerability. FBI claims it’s “going dark”, but that’s only for timely decryption of phones. If they are willing to wait a year or two a vulnerability will eventually be found that allows decryption.

That’s what’s happened with the “GrayKey” device that’s been all over the news lately. Apple is fixing it so that it won’t work on new phones, but it works on old phones.

Ozzie’s solution is based on the assumption that iPhones are already secure against things like GrayKey. Like his assumption “if Apple already has a vault for private keys, then we have such vaults for backdoor keys”, Ozzie is saying “if Apple already had secure hardware/software to secure the phone, then we can use the same stuff to secure the backdoors”. But we don’t really have secure vaults and we don’t really have secure hardware/software to secure the phone.

Again, to stress this point, Ozzie is solving the part we already know how to solve, but ignoring the stuff we don’t know how to solve. His solution is insecure for the same reason phones are already insecure.

Locked phones aren’t the problem

Phones are general purpose computers. That means anybody can install an encryption app on the phone regardless of whatever other security the phone might provide. The police are powerless to stop this. Even if they make such encryption crime, then criminals will still use encryption.

That leads to a strange situation that the only data the FBI will be able to decrypt is that of people who believe they are innocent. Those who know they are guilty will install encryption apps like Signal that have no backdoors.

In the past this was rare, as people found learning new apps a barrier. These days, apps like Signal are so easy even drug dealers can figure out how to use them.

We know how to get Apple to give us a backdoor, just pass a law forcing them to. It may look like Ozzie’s scheme, it may be something more secure designed by Apple’s engineers. Sure, it will weaken security on the phone for everyone, but those who truly care will just install Signal. But again we are back to the problem that Ozzie’s solving the problem we know how to solve while ignoring the much larger problem, that of preventing people from installing their own encryption.

The FBI isn’t necessarily the problem

Ozzie phrases his solution in terms of U.S. law enforcement. Well, what about Europe? What about Russia? What about China? What about North Korea?

Technology is borderless. A solution in the United States that allows “legitimate” law enforcement requests will inevitably be used by repressive states for what we believe would be “illegitimate” law enforcement requests.

Ozzie sees himself as the hero helping law enforcement protect 300 million American citizens. He doesn’t see himself what he really is, the villain helping oppress 1.4 billion Chinese, 144 million Russians, and another couple billion living in oppressive governments around the world.

Conclusion

Ozzie pretends the problem is political, that he’s created a solution that appeases both sides. He hasn’t. He’s solved the problem we already know how to solve. He’s ignored all the problems we struggle with, the problems we claim make secure backdoors essentially impossible. I’ve listed some in this post, but there are many more. Any famous person can create a solution that convinces fawning editors at Wired Magazine, but if Ozzie wants to move forward he’s going to have to work harder to appease doubting cryptographers.