Вчера пол интернета лежало, потому что лежали сервера Cloudflare. Что это было?
Некий процесс каждые несколько минут формировал и рассылал всем серверам Cloudflare файл с правилами маршрутизации, а именно списком адресов откуда лезут боты. Результаты никак не проверялись на корректность, и однажды после обновления БД из которой брались данные, он оказался забит одинаковыми строчками.
Обработка этого файла велась другим процессом в котором использовалась тестовая функция не рекомендованная для практической работы. В результате получив слишком большой файл процесс просто падал и маршрутизация не работала вообще потому что Cloudflare не могла отличить честного пользователя от бота.
Использованные источники:

Комментарии
О! На Rust народ пишет!
Недавно было интервью с нашим парнем оттуда. Да, у них на уровне стратегического решения переписывать с C++ на Rust. Что есть очень-очень хорошо.
В целом советую https://vkvideo.ru/video-224967259_456239172
Да?
Это rust им вчера помог?
Руст им помог в 86м
Если переписывать - то идея не очень.
Они меняют уже имеющийся проверенный и отлаженный код на аналогичный, только написанный заново, толком не оттестированный.
В линукс сообществе в этом году постоянные срачи, дескать взяли переписали утилиту вылизанную за тридцать лет до блеска на ее раст-версию, получили в результате замедление в одиннадцать раз и 0day уязвимости :-)
И правильно делают. Нашим бы у них поучиться, но нет.
В aws наших чуть больше чем, просто много. А rust чуть больше, чем много в wb, например. В битриксе тоже его активно внедряют ребята. Так что это ещё посмотреть надо кто кого учит.
Да, тут надо понимать, что у Rust основная ниша - это системное программирование.
Т.е. большинство народа пишет на более казуальных языках Java/C#/PHP/GO и получает аналогичный уровень надёжности сильно более простым кодом (но при этом несколько проигрывает в производительности и в объёме занимаемой памяти).
PS: Если что - на Rust писал немного, так что представляю о чем говорю.
Какие такие наши в aws? Чей они там ВВП увеличивают? Какой софт на rust WB выложил в публичный доступ? Про битрикс даже говорить не хочу.
2 конторы на всю страну, при этом я назову список на 2 листа где раст практически запрещен.
так бывает, к сожалению
Клаудфларе в последнее время не хвастались, сколько кожаных мешков они заменили на LLM?
У них кстати довольно прикольный процесс шифрования.
Комната в датчиках движения, через нее постоянно ходит народ, а считываемая информация с датчиков является шифром, шанс взломать такой нулевой, ибо в каждый момент времени скорость, частота движений разные.
Не шифром, а ключами или даже сидами.
Помнится в одной из систем шифрования спутникового цифрового телевидения применялся ключ формируемый путем прослушивания микрофоном шума водяного фонтанчика в оранжерее офиса))))
Вот именно, что прикольный. В норме шум с прекрасными параметрами делается копеечным электронным устройством без фонтанчиков и комнат с пешеходами.
тырнеты создавались для решения проблемы единого центра отказа. И что же сделали манагеры после решения этой проблемы? Впарили за деньги этот единый центр отказа "как услугу"(ц). На новом уровне правда. Со свистелками, перделками и удобствами. В итоге весь мир сложил все яички в одну корзину к дяде сэму. Молодцы. Заодно решили проблему необходимости большого числа профессиональных администраторов. Сплошная выгода. До поры. То ли ещё будет. Ведь число админов снова можно снизить. И так до предельного случая. Классичекская нисходящая спираль убывающего интеллекта.
Технические нюансы тут глубоко вторичны. И просто любопытны.
Лучше не скажешь.
Для решения проблемы единого центра отказа создавалась американская военная сеть, а гражданским никто ничего не обещал.
Эммм... няп, для устойчивости было создано 13 корневых узлов DNS. И были они в Пиндостане. А потом (в нулевые) даже в РФ были созданы СВОИ узлы DNS и даже примерно раз в год-два учения проводятся на тему: "отключение России от интернета тВорогами".
А вот что произошло (обсуждаем в статье)? Служба борьбы с ботами/спамерами "положила" сеть?
А DNS тут при чём?
Если меня не перемкнуло, то DNS - domain name service - служба доменных имён - преобразование циферок адреса в имена (слова) и обратно. Собно, идея интернета, няп, в рассредоточении и маршрутизации в обход "битых" узлов связи при ядерных ударах. А остальное, это уже поздние "украшательства", имхо.
+1. Так точно.
Перенаправлять новых юзеров, отличающихся от спамеров, на новые IP балансеров.
На предыдущем уровне сети, когда до днс дело еще не дошло легла маршрутизация.
У нас кстати посконный чебурнет (и я ща не смеюсь и не издеваюсь) и эти тесты тоже проходит раз в год.
Свои ДЦ, свои каналы.
Данунафиг. На транспортном уровне всё как работало так и работает. С резервированием, балансировкой, деревьями и гарантированной доставкой. А вот выше, на сеансовом или уровне приложения всё замнулось на облачных вспышках и привет. Они же удобные сервисы продают, получая в обмен вашу свободу. В теории у них лучше специалисты, но возникает неустранимое противоречие, приводящие к спирали отупления. Раньше каждый был себе дурачком. Ну не смог DDOS отфильтровать - сдох. Но таких админов было миллионы. А сейчас заплатил - получил облачных. Их нужно меньше. Потом они не нужны такие умные. Потом ИИ. Потом ещё. И приехали.
Да как сказать... Насколько я понимаю, принцип сетевого нейтралитета давно отправлен в корзину. Так что транспортный тоже... ПОдкручен в зависимости от толщины кошелька. Другое дело, что каналы нынче такие, что без форс-мажора это не заметишь.
:-) если протупить с протоколом, то любой канал засрёт сам себя за секунды. И я уверен, что у АНБ есть все ключи для такой тырнет ядерной бомбы. Иллюзия того что можно пользоваться вражеским оборудованием и ПО, и при этом оставаться в шоколаде, это просто губительная иллюзия. С годами эти ребята всё лучше маскируются и всё глубже подрывают, если им надо.
Ну да. То, что сначала было подозрением, сегодня очевидно как божий день. Впрочем, РТ, насколько мне известно, уже больше 10 лет инфраструктуру на китайскую переводит, так что что-нибудь у нас выживет.
Основной технический нюанс который к этому привел это количество взломанных хостов в интеренете, 90% сервисов в принципе не потянут защиту от ddos реализованую даже обычным скрипт кидисом, про реальный ddos когда кладут целиком канал даже говорить нечего.
Децентрализация в условиях когда тебе тупо движением левой пятки могут ливануть на ресурс гигабит udp а у тебя канал гигабит теряет смысл, любой бизнес или сервис в интернете в таких условиях убивается на раз......
Свистелки тут вторичны, стоимостью защиты от ddos поинтересуйтесь... там ценники дико не гуманные. А клоудфлэр делает 90% этого за бесплатно либо за маленькую копейку.
Согласен. Но это вообще не отменяет того что я написал, а скоре даже поднимает фоновую проблему ещё больше озвученной. Суть в том что ботсети, это не маленькая проблема, а специально, намеренно созданная крупными игроками реальность. Так же как и проблема "вирусов". винтел не просто тупят, они создают реальность в которой общество само прибежит к ним с просьбой о защите от "волков". Интернет вещей резво увеличивает проблему. Проблема не техническая, а организационная.
Вы неправы. Это принципиально реализуемо, а поэтому это создано и эксплуатируется. Защита о ddos - это именно то, что делают такие провайдеры. Это единственное, что можно сделать.
Какие-то тайны заговора здесь полностью мимо. "Есть техническая возможность, поэтому существует" - ровно этот принцип работает.
Ай-ай-ай, а кто же это сделал? Кто-то умудрился дублировать таблицу при обновлении. Кожаный или электрический.
И если кожаный, было бы неплохо посмотреть на его счета, так, на всякий случай.
Самая мЯкота, имхо на биржЭ! Там задержка пинга может стоить миллионы, если не миллиарды. Кто-то "сидел" физически на биржЭ, а кто-то на "надёжных" линиях связи...
Некоторые компании покупают прямые линии до биржи.
Собсно, и я об этом. Надо физически быть рядом. Или прямо на месте. Но большинство работают на биржЭ удалëнно. Они просто корм для истинных акул. Имхо.
И, главное, всё почесноку!
А это кстати не проблема. Мало ли, был один источник IP ботов, стало два. Дающих частично пересекающиеся результаты. Или пять. Это для конторы размером в 50% интернета нормально.
А вот то что результаты не дедуплицировались и не проверялись на соответствие собственному внутреннему регламенту (у них был установлен приказом по бараку предельный размер этого файла не более скольки-то мегабайт) это косяк. Что робот получатель при превышении этого размера молча падал, потому что в нем отладочную заглушку не заменили на обработчик ошибки тоже косяк.
Бгг, горюшко, "полинета" лежало, даже не заметил.))
рЭтроградЪ!
Поди ишшо и баб-с пользуете вместо однополой любви?!
Поди знай, кто он! Мож он гик интроверт и пользуется, в своей личной вселенной, поделиями искусными на аккумуляторах...
Она и так не отличает. Стоит зайти с какого-нибудь браузера старой версии и ты бот.
Ну сейчас достаточно крупных сайтов которые вам ничего не покажут без js на вашем браузере....
Java там точно есть.
Кстати почему хром-инкогнито работает в пять раз быстрее, чем просто хром? Тоже не нашел ответа. То что пишут отключить расширения и сбросить настройки - полная туфта.
Может старый компьютер, мало оперативы? Т.к., возможно, в режиме инкогнито тупо меньше обращений к диску.
Не новый конечно. 2Гб.
По моему наблюдению нынче 8Гб мало. Если еще и диск не ССД так вообще беда. Так, что в режиме инкогнито, скорее всего, быстрее работает из за того, что меньше обращений к диску (не пытается сохранить всякий кэш и куки).
Похоже никто из современных сайтописателей оптимизацией не страдает.
Возможно. Ошибки иногда выдает наподобие out of memory to display, но это я думаю из-за засилья рекламы на сайтах. Отключать пробовал, тогда перестает показывать многие фото, что не есть хорошо.
не ява, а яваскрипт.
На самом деле всё там в порядке с этой функцией (проверяет код ошибки вызова, и завершает процесс если он ненулевой).
Нормальная обёртка в стиле "защитное программирование".
Другое дело, что в данном случае разработчик не понял, что проверяемая функция обращается к внешним данным, в которых может быть ошибка/проблема.
И что в данном случае ошибку надо обрабатывать, а не паниковать.
Ну а принципиальная ошибка - то, что вся инфраструктура висела на одном сервисе, который обслуживался в рамках той же инфраструктуры.
--------------------------
Я помню отличную историю на одном из форумов:
В организации внедрили виртуализацию.
Поставили два мощных сервера виртуальных машин, с возможностью миграции между ними.
Настроили всё замечательным образом, в частности, загрузку этих серверов виртуализации и запуск виртуальных машин - повесили на авторизацию в домене. С шифрацией дисков.
Сервера домена, разумеется, тоже сделали виртуальными машинами. Основной и резервный - на разных серверах.
Всё довольно долго работало отлично, пока в какой-то момент не пришлось выключить всю серверную.
При включении оба сервера виртуализации отказались загружаться, т.к. не могли достучаться до контроллеров домена
8-D +1.
Страницы