oleg_log
1.73K subscribers
1.88K photos
131 videos
9 files
2.82K links
Shelter for antisocial programmers "Oleg"

halp: @olegkovalov
web: https://olegk.dev
fov: @oleg_fov
chat: @oleg_log_blabla
podcast: @generictalks
Download Telegram
BATYA не знает как работает DeepEqual и NaN, шок сенсации. Чесн говоря сам хз, повезло не сталкиваться. Вообще речь пошла про выкидывание NaN из ключей мапы https://github.com/golang/go/issues/20660
Оригинал https://portswigger.net/research/http2 я не осилил, но походу все круто-плохо.

*тут безаргументированный наезд на сложность хттп2*
Проблеме подвержены web-прокси, балансировщики нагрузки, web-акселераторы, системы доставки контента и прочие конфигурации, в которых запросы перенаправляются по схеме фронтэнд-бэкенд. Автор исследования продемонстрировал возможность атаки на системы Netflix, Verizon, Bitbucket, Netlify CDN и Atlassian, и получил 56 тысяч долларов в программах по выплате вознаграждений за выявление уязвимостей. Наличие проблемы также подтверждено в продуктах F5 Networks. Частично проблема затрагивает mod_proxy в http-сервере Apache (CVE-2021-33193) . . . В nginx возможность одновременного указания заголовков "Content-Length" и "Transfer-Encoding были блокированы в прошлом выпуске (1.21.1). Средства для проведения атак уже добавлены в инструментарий Burp и доступны в форме расширения Turbo Intruder.


Новая атака на системы фронтэнд-бэкенд, позволяющая вклиниться в запросы
https://www.opennet.ru/opennews/art.shtml?num=55601
Пока только ленивый не ругается на экосистему npm, а тем более бесполезный пакет "-", 1 человек реально подошел к проблеме и, как по мне, неплохо её объяснил:

npm i - someFlag somepackage опа и случайный пробел сделал тебе еще 1 пакет. Миленько.

https://www.bleepingcomputer.com/news/software/empty-npm-package-has-over-700-000-downloads-heres-why/
Есть как минимум три вида технологий.

Одни живут в три классических стадии:
1. Зарождение и узкий круг энтузиастов;
2. Рост и широкое использование;
3. Моральное устаревание, легаси;

К ним относятся большая часть мейнстрима. Вот эти вот ваши Java, Kotlin, Go, Docker, Vagrant, сервлеты, монги, постгресы, VSCode, IDEA и тд.

Есть мертворождённые. Они появляются, чтобы умереть. О них мы обычно узнаём из радостных тредов на реддите и HN. Тут даже перечислять нет смысла, тысячи их.

А есть эндемики. Они существуют, чтобы выживать. Их доля никогда не превысит 1%, но они пережили и переживут большую часть мейнстримных продуктов.

Emacs видел, как по реке проплыли трупы примерно десятка популярных IDE и похоронит ещё столько же. Сообщество gopher и geminispace ещё несколько человеческих поколений будет спорить о том, какой же браузер наиболее труъ и unbloated. Fido узлы переписывают на rust, а завтра будут переписывать на какой-нибудь v.

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

Если завтра лопнувший пузырь доткомов 2.0 похоронит под собой сегодняшнюю экосистему, то угадайте кто выберется из-под обломков?
oleg_log
Готовимся к понедельнику, леди и джентельмены. https://t.me/nikitonsky_pub/157
А вообще после таких постов понимаешь, на сколько важен твёрдый и стабильный грунт для создания чего-то.

Да, да, можно вспомнить, что индустрия у нас молодая, активная фаза сколько, 20-30 лет? и все впереди, вот-вот сейчас поймем как надо строить и заживем. Но что-то мне подсказывает, что мы уже достигли этой точки, когда вся теория (ну давайте смягчу до "большинство теории") для построения решений уже известна.

Во-первых хороший и достаточный стдлиб, чтобы все начинали с одного уровня. Во-вторых один стиль языка (тут больше про паттерны и единый партийный lang-way). В-третьих один способ управлять зависимостями и сюда же какой-то тулинг добавим.

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

(перед тем как начал печатать это, хотелось провести какие-то параллели с математикой, какой-то простой алгеброй/матанализом и теории групп, но мне чет лень делать переход к этому абзацу, поэтому /тред)

Что-то у меня подозрение, что бы похожий вопрос на канале, но at least once delivery как говорится: что по вашему мнению должно быть, должно измениться, должно появиться в индустрии, чтобы были вот все эти крутые небоскребы по 5км и летающие пылесосы и стало всем хорошо жить, м?
Есть массив неких объектов с интовым ID. Нужно проверить, что все ID уникальны и от 1 до len(array).

Так вот, хотел сперва спросить, как бы вы делали, но потом подумал, что это покажется скучным, поэтому попробуем wrong answers only подход.

Удивите :D (на язык и колво цпу-часов пофиг)
oleg_log
Есть массив неких объектов с интовым ID. Нужно проверить, что все ID уникальны и от 1 до len(array). Так вот, хотел сперва спросить, как бы вы делали, но потом подумал, что это покажется скучным, поэтому попробуем wrong answers only подход. Удивите :D (на…
В общем закончилось все так.

Параметры спецом такие забавные, чтобы вызывать loadMigrations(l.Load()) и не делать 1 iferr в месте вызова. И с тестами проще. Записывайте в методичку.

Только обратите внимание, что это unexported, поэтому можно так выпендриваться.
Да блен ток пушнуть код хотел, а Github помер.

remote: Resolving deltas: 100% (3/3), completed with 1 local object.
remote: fatal error in commit_refs
To github.com:foo/bar.git
! [remote rejected] main -> main (failure)
error: failed to push some refs to


https://www.githubstatus.com/
oleg_log
Эпоха уходит...
ну 3 месяца вполне ок, даж шустра справились, видно 1.18 давит)