Metasploit Wrap Up 05/22/2026

Post Syndicated from Martin Sutovsky original https://www.rapid7.com/blog/post/pt-metasploit-wrap-up-05-22-2026

Another week, another authentication bypass

Our humble Metasploit weekly(ish) blog has been blessed with a new network component vulnerability. The dynamic duo of @sfewer-r7 and @jburgess-r7 have discovered and authored the admin/networking/cisco_sdwan_vhub_auth_bypass module for CVE-2026-20182, a vulnerability gracing the Cisco Catalyst SD-WAN Controller. The devices, whose purpose is to control a software-defined (SD) wide-area-network (WAN) was unfortunately missing an extra A for authentication. An oversight that Cisco has duly patched.

Elsewhere this week, the HUSTOJ online judge platform has been caught failing to judge its own zip files (CVE-2026-24479), courtesy of a zip-slip RCE module from LoTuS and friends. Next, @Alpenlol has weaponized the small matter of Barracuda’s Email Security Gateway, happily eval()-ing the number format string inside an attached Excel file (CVE-2023-7102).

Our own @jburgess-r7 has been rather busy and also contributed a cPanel/WHM authentication bypass module that escalates straight to root via CRLF injection (CVE-2026-41940). And last, but not least, @h00die has gifted us a post module for Tenable Security Center that quietly extracts and cracks its stored credential hashes. Nevertheless, this module works only if your Tenable Security Center is using the same password you have been using since 2006.

A_train_hitting_a_school_bus.png

New module content (5)

Cisco Catalyst SD-WAN Controller vHub Authentication Bypass

Authors: Crypto-Cat and sfewer-r7

Type: Auxiliary

Pull request: #21463 contributed by jburgess-r7

Path: admin/networking/cisco_sdwan_vhub_auth_bypass

AttackerKB reference: CVE-2026-20182

Description: This adds a new auxiliary module for CVE-2026-20182, an authentication bypass in the Cisco Catalyst SD-WAN Controller.

HUSTOJ Admin users can zip-slip problem_import_qduoj.php, planting PHP files in webroot for RCE

Authors: LoTuS and friends, ling101w, and oxagast

Type: Exploit

Pull request: #21165 contributed by oxagast

Path: linux/http/hustoj_problem_import_rce

AttackerKB reference: CVE-2026-24479

Description: This adds an exploit for CVE-2026-24479 which is a zip slip vulnerability in HustOJ, an open source online judge platform, prior to version 26.01.24.

Barracuda ESG Spreadsheet::ParseExcel Arbitrary Code Execution

Authors: Curt Hyvarinen, Mandiant, and haile01

Type: Exploit

Pull request: #21035 contributed by Alpenlol

Path: linux/smtp/barracuda_esg_spreadsheet_rce

AttackerKB reference: CVE-2023-7101

Description: Adds a new exploit module for CVE-2023-7102, an unauthenticated remote code execution vulnerability in Barracuda Email Security Gateway (ESG) appliances. The flaw resides in the Amavis scanner’s use of the Perl Spreadsheet::ParseExcel library, which allows eval injection via malicious Excel number format strings. The module uses Rex::OLE to craft a minimal BIFF8 XLS file with the payload embedded in a FORMAT record and delivers it via SMTP.

cPanel/WHM CRLF Injection Authentication Bypass RCE

Authors: Adam Kues, Crypto-Cat, Shubham Shah, and Sina Kheirkhah

Type: Exploit

Pull request: #21417 contributed by jburgess-r7

Path: multi/http/cpanel_whm_auth_bypass_rce

AttackerKB reference: CVE-2026-41940

Description: This adds an exploit module for cPanel/WHM authentication bypass leading to root RCE (CVE-2026-41940).

Tenable Security Center

Author: h00die

Type: Post

Pull request: #21177 contributed by h00die

Path: linux/gather/tenable_security_center

Description: This adds a linux post module for Tenable Security Center that will retrieve credential hashes and crack them.

Enhancements and features (6)

  • #21292 from sjanusz-r7 – Updates the RPC notes command to allow data to return a hash value were applicable.
  • #21305 from sjanusz-r7 – Updates the services RPC endpoint to additionally report the resource and parent services fields.
  • #21414 from dledda-r7 – This backports the Python components of the Copy Fail (CVE-2026-31431) exploit to work with Python 2.7 interpreters, effectively supporting older targets.
  • #21447 from jheysel-r7 – This updates Metasploit’s documentation to describe how a kerberoast attack can be performed entirely with Metasploit. It also updates the kerberoast module to correctly log the realm to the database regardless of if an existing LDAP session was used or not.
  • #21458 from dwelch-r7 – Updates the Sinatra, Rack, and Thin web service dependencies to support an upcoming Rails 8 upgrade.
  • #21460 from bhaskarbhar – This consolidates some code used by Windows exec payloads to provide a more consistent experience.

Bugs fixed (4)

  • #21285 from sjanusz-r7 – Updates the RPC creds command to now also return the associated realm key and value.
  • #21345 from g0tmi1k – This fixes an issue in the smb_enumshares module that prevented it from working against certain SMB 1 targets such as Metasploitable 2.
  • #21474 from adfoster-r7 – Fixes a crash in msfdb init on Windows.
  • #21475 from adfoster-r7 – Fix msfdb installation error on windows.

Documentation

You can find the latest Metasploit documentation on our docsite at docs.metasploit.com.

Get it

As always, you can update to the latest Metasploit Framework with msfupdate and you can get more details on the changes since the last blog post from GitHub:

If you are a git user, you can clone the Metasploit Framework repo (master branch) for the latest. To install fresh without using git, you can use the open-source-only Nightly Installers or the commercial edition Metasploit Pro

[$] Custom page-cache policies with BPF

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

The kernel’s page cache is charged with maintaining pages (or, more
correctly, folios) containing copies of
data from files in the filesystem; its performance has a big effect on the
performance of the system as a whole. One of the key decisions the kernel
must make is when to evict folios from the page cache. At the 2026 Linux Storage,
Filesystem, Memory Management, and BPF Summit
, Tal Zussman ran a
memory-management-track session on how the page cache could be better
customized for specific workloads. It will not be much of a spoiler to say
that it involves BPF.

CISA Security Leak

Post Syndicated from Bruce Schneier original https://www.schneier.com/blog/archives/2026/05/cisa-security-leak.html

Crazy story:

Until this past weekend, a contractor for the Cybersecurity & Infrastructure Security Agency (CISA) maintained a public GitHub repository that exposed credentials to several highly privileged AWS GovCloud accounts and a large number of internal CISA systems. Security experts said the public archive included files detailing how CISA builds, tests and deploys software internally, and that it represents one of the most egregious government data leaks in recent history.

News article.

[$] Toward better handling of major page faults

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

A major page fault occurs when a process attempts to access a page that is
not currently present in RAM; satisfying such faults usually involves I/O, and can thus take some time. When many threads
sharing an address space are generating page faults, the result can be
significant lock contention while that I/O
takes place. During the memory-management track at the 2026 Linux Storage,
Filesystem, Memory Management, and BPF Summit
, Barry Song led a session
to try, yet again, to find an enduring solution to this problem.

Security updates for Friday

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

Security updates have been issued by AlmaLinux (firefox), Debian (chromium, nss, openvpn, and thunderbird), Fedora (cockpit, kernel, and linux-firmware), Oracle (gdk-pixbuf2, kernel, and libsndfile), SUSE (container-suseconnect, cpp-httplib, dnsmasq, firefox, glibc, GraphicsMagick, java-1_8_0-openj9, kernel, mozjs115, php8, python-urllib3, rekor, rootlesskit, rsync, tiff, ucode-intel, util-linux, and xz), and Ubuntu (bind9, bubblewrap, libarchive, linux-intel-iot-realtime, postgresql-14, postgresql-16, postgresql-17, postgresql-18, and xdg-desktop-portal).

Как се дресира опозиция

Post Syndicated from Емилия Милчева original https://www.toest.bg/kak-se-dresira-opozitsiya/

Как се дресира опозиция

Най-сетне, 20 години след създаването си, ГЕРБ има шанса да бъде истинска опозиция. Но нито иска, нито знае как. Групата от 39 депутати на партията на Бойко Борисов и коалиционният ѝ придатък СДС е най-малката в парламентарната история на „Граждани за европейско развитие на България“.

Могъществото на Румен Радев и неговата „Прогресивна България“ (ПБ) е потискащо за Борисов. Но проблемът на партията е по-дълбок от едно смачкано его, било то и лидерско. ГЕРБ така и не се научи да бъде опозиция, защото никога истински не е била извън управлението. 

Дори когато не управлява пряко, ГЕРБ остава вградена във властта – монополист е в местното управление, с влияние в регулатори и съдебна власт. Партия, свикнала да бъде част от държавата, трудно влиза в ролята на неин коректив.

За ГЕРБ опозицията никога не е била политическа идентичност, а временен режим.

Ако човек не знае, че в 52-рия парламент има парламентарна група на ГЕРБ–СДС, трудно би го разбрал по поведението ѝ. Новото мнозинство управлява по начин, болезнено познат от годините на Борисов – с концентрация на власт около премиера и автоматизирано парламентарно мнозинство. Само че ГЕРБ изглежда необичайно кротка. 

Така моделът оцелява дори когато участниците в него се сменят. 

А Румен Радев не просто се възползва от слабостта на ГЕРБ. Той случи и на раздробена и снишена опозиция, чийто общ сбор народни представители е по-малък от неговите 131 депутати. 

Команда „Равнис!“ смени вятъра на промяната
След новата власт тръгна цялата държава в строй – прокурори се оттеглят, бизнесмени сменят роли, охрани падат, институции внезапно проработват, а доскорошни врагове козируват в синхрон. Само цените отказват да се подчинят на командата „Равнис!“. Там ще е първият тест. Коментар на Емилия Милчева.
Как се дресира опозиция

Изобщо, изборите произведоха странна картина в 52-рия парламент – комфортно мнозинство срещу едновременно шумна и немощна опозиция. Именно ГЕРБ–СДС и ДПС („Ново начало“) – партиите на модела, срещу който бяха последните големи протести – днес са особено кон-струк-тив-ни.

Консолидиране на властта

ДПС продължава с тактиката публичните говорители да са предимно жени, а Атидже Вели очевидно влиза в тази роля. Партията демонстрира готовност за ситуативни мнозинства и внимателно избягва челни сблъсъци с новата власт.

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

Новата власт вече подменя втория управленски ешелон с ускорени темпове. Сред сменените изпъкват шефовете на митниците, ДАНС, БЕХ, АЕЦ „Козлодуй“. Любопитното е, че точно в енергетиката някои ключови фигури остават непокътнати – като изпълнителните директори на „Булгартрансгаз“ и „Булгаргаз“ Владимир Малинов, свързван с разширението на газохранилището „Чирен“ и неизгодния договор с „Боташ“, и Веселин Синабов. 

Новината обаче е, че енергийната министърка Ива Петрова ще преговаря по условията на 13-годишната сделка с „Боташ“, която носи огромни загуби за България и беше сключена от служебен кабинет на Радев като президент. България не плаща дължимите по нея 500 000 долара на ден за достъп до втечнен газ от Турция, който не използва, защото е много скъп.

Показателен за стила на новото управление е случаят с особения управител на активите на „Лукойл“ в България Румен Спецов. Скоро ще се разбере дали назначеният на 14 ноември 2025 г. бивш директор на НАП ще бъде сменен, за което съобщиха най-напред депутати от ПБ. 

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

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

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

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

Пирамидата
Абсолютното мнозинство на „Прогресивна България“ пренарежда властовия модел и предлага централизиран контрол с бързи решения и по всяка вероятност слаб отпор. Кой с какви заявки влиза в 52-рия парламент? От Емилия Милчева.
Как се дресира опозиция

Вицепремиерът и министър на финансите Гълъб Донев говори за икономии, но те се оказват политически селективни. Идеята е да спрат автоматичните увеличения на заплатите и да се орежат с 10% разходите в публичния сектор. Но армията, МВР, службите, Националната служба за охрана, учителите и лекарите остават защитени. Вдига се и максималният осигурителен доход – на 2300 евро. 

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

Лимит за опозицията

Правителството се опитва да овладее растящите разходи, включително като изземва 100-процентово дивидента на държавните дружества – практика, въведена от Асен Василев през 2023 г. В парламента депутатите на ПБ осигуряват на правителството и нещо не по-малко важно – репутационен комфорт. 

Правилникът за работа на 52-рото Народно събрание е променен така, че министрите могат да се измъкват от парламентарен контрол колкото пъти поискат. Премахнат беше досегашният им лимит за максимум две отсъствия, както и задължението им да дават лични обяснения при отговори, забавени до 10 дни. 

Този замисъл е продиктуван от тактически съображения: голямата група на „Прогресивна България“ е пълна с нови депутати, които тепърва навлизат в парламентарната рутина. Колкото по-строго е режисиран процесът, толкова по-малък е рискът от неприятни изненади.

Затова и Правилникът започва да прилича на инструмент за управление на „другите“ – чрез ограничаване на изказванията, времето за реакции и възможностите за временни комисии. Някои от тези ограничения са разумни, защото намаляват процедурните хватки. 

Срещу ограничаването на възможностите за парламентарен контрол този път възразиха и от ГЕРБ, освен от ДБ, ПП и „Възраждане“. ДПС отново бяха въздържани.

По идея на ПБ председателят на парламента ще предлага точки в дневния ред, без да са консултирани на председателски съвет. Eдна от най-сериозните промени е свързана с временните комисии. За създаването им вече ще са нужни 48 депутати – брой, с който не разполага нито една опозиционна формация сама по себе си. 

Прагът е същият като за вот на недоверие или сезиране на Конституционния съд. ГЕРБ–СДС разполагат с 39 депутати, ДБ – с 25, ДПС наброяват 21, ПП – 12, „Възраждане“ са представени също с 12 депутати. Ако някоя от опозиционните парламентарни групи настоява за временна комисия, ще се наложи да преговаря с останалите.

Ако темата е значима, то тя трябва да намери изражение в по-голямо мнозинство.

Петър Витанов, председател на ПГ на „Прогресивна България“

Парламентът не е просто място, в което мнозинството само преброява гласовете си. То е мястото, където властта трябва да бъде питана и да дава отговори. Ако тук няма реален контрол, демокрацията се изпразва от съдържание.

Надежда Йорданова, съпредседателка на ПГ на „Демократична България“

Дори Бойко Борисов и Делян Пеевски не са се опитвали да ограничат така правата на опозицията.

Николай Денков, председател на ПГ на „Продължаваме промяната“

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

Всичко това може да изглежда процедурно. Но всъщност парламентът постепенно се пренастройва така, че да създава по-малко шум, по-малко риск и по-малко неудобства за мнозинството. Неслучайно дори времето за запознаване със законопроектите беше орязано от 72 на 24 часа.

Същинският проблем

Истинският проблем не е, че опозицията е слаба. А че е раздробена и неспособна да произведе усещане за алтернатива. Това оставя управлението на Румен Радев почти без сериозен политически натиск – освен ако не се самовзриви. 

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

Радев, ще удряш ли с юмрука?
Абсолютното мнозинство дава възможност за бързи решения без оправдания. Първият тест е кадровият – ВСС, главен прокурор, регулатори. От него ще се види към обещаната промяна ли се върви, или „юмрукът“ ще пренарежда същата система с други лица. От Емилия Милчева.
Как се дресира опозиция

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

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

Когато властта се консолидира без особена съпротива, безалтернативността постепенно започва да изглежда естествена. И онзи вдигнат юмрук се превръща в новата нормалност.

На второ четене: „Мрак по пладне“

Post Syndicated from Стефан Иванов original https://www.toest.bg/na-vtoro-chetene-mrak-po-pladne/

„Мрак по пладне“ от Артур Кьостлер

На второ четене: „Мрак по пладне“

превод от английски Алфред Криспин, София: изд. „Нике“, 2025

Романът е част от онези произведения, които демонтират самата възможност за история като последователен разказ. Той е едновременно политически роман, психологически трактат и нещо като философска аутопсия на ХХ век, извършена отвътре, с инструментите на самата идеология, която умира на масата.

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

Още в първите страници се усеща една от ключовите черни иронии на текста. Тоталитаризмът функционира като прекалено добре подреден свят.

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

Централният персонаж Рубашов е продукт на собствената си вяра. Неговият вътрешен разпад произтича от вътрешна логика много повече, отколкото от натиска на разпитите. Той приема вината си, защото е виновен в метафизичен смисъл. Поставил е абстрактното човечество над конкретния човек. Това е може би най-радикалната тема на романа. Разривът между идеята и тялото, между историята (с главно И) и човешкия живот като такъв. Рубашов е мислил, че може да реши уравнението на справедливостта с алгебрични средства и да изчисли по-малкото зло и да остойности страданието. В крайна сметка самият той се оказва в графата на допустимите загуби.

Тук заслужава внимание самият механизъм на „граматическата абстракция“ – термин, който Кьостлер въвежда чрез Рубашов. Азът като субект, като неделимо ядро, човекът като такъв, е фикция, която системата отказва да признае. Революцията говори в първо лице множествено число. Единственото число е ерес. Рубашов, затворен в килията, започва да усеща отново пулсирането на този забранен Аз като фантомна болка в ампутиран крайник. Връщането на субективността е последната форма на съпротива, макар закъсняла и безсилна.

В тази точка Кьостлер влиза в диалог с голямата традиция на европейската литературна мисъл. Ако при Достоевски вината е винаги лична и неотменима, вградена в самото тяло на човека, в неговата плът и молитва, то при Кьостлер тя е разтворена в колективното. При Кафка абсурдът идва от непрозрачността на властта, а тук извира от нейната прекомерна прозрачност. Всичко е логично, обяснимо и затова е и непоносимо. Това е анти-Кафка. Убива прекалено добре разбраният закон. Тук обвиняемият познава съдиите лично, пил е с тях, воювали са рамо до рамо.

Достоевски предлага на героите си изход през страданието или през вярата. Рубашов получава куршум в тила и никакъв метафизичен хоризонт отвъд него. Кьостлер пише в свят, от който Бог вече е евакуиран и на неговото място стои Партията. Божествено взискателна, абсолютна и без никакво обещание за спасение. Единственото трансцендентно, което остава, е „океанското усещане“, онова неясно, почти физиологично чувство за връзка с нещо по-голямо от себе си, което Рубашов изпитва в моменти на самота.

Паралелът с „1984“ на Джордж Оруел е почти неизбежен. При Оруел властта действа отвън и е брутална. Тя смазва, наблюдава и изтрива. При Кьостлер тя е интериоризирана и вградена в самия начин на мислене. Рубашов е съавтор на системата. Това прави трагедията му по-близка до античната. Той пада, защото е бил прекалено последователен в собствената си вяра. Оруел показва какво прави властта с тялото. Кьостлер показва какво се случва, когато умът доброволно ѝ се подчинява.

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

Пълното отсъствие на ирония е може би най-страшната форма на тоталитарно съзнание.

Един от най-смущаващите мотиви в романа е доброволното самопризнание. Това е философски парадокс. Човек се съгласява да бъде виновен, за да запази истинността на системата, в която е вярвал. В самопризнанието на Рубашов има нещо мъченическо, но обърнато наопаки. Рубашов умира, за да свидетелства за лъжата, в която е вярвал като в истина.

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

На второ четене: „Мрак по пладне“

Ако направим крачка към съвременността, неудобството става по-голямо. Защото светът на романа се е трансформирал и не е изчезнал. Днес живеем в епоха, в която идеологиите са по-малко монолитни, но механизмите на самооправдание са също толкова ефективни. Днес липсва нужда от централен „Първи“, защото алгоритмите, социалните мрежи, икономиката и медийните екосистеми вършат сходна работа – по-меко, по-разсеяно и уж по-демократично.

Тоталитарната логика при Кьостлер е имала поне тежестта на трагедията и мащабът на жертвата е бил съизмерим с мащаба на вярата. Съвременният еквивалент има по-скоро текстурата на мека зависимост. Човек се отказва от малки порции автономия ежедневно и незабележимо. В замяна получава удобство, принадлежност и ценностна ориентация. Никой не те води на разпит, не е нужно, нужното се чува и чете. Алгоритъмът знае какво искаш, преди ти самият да го знаеш. Романът днес може да се мисли и като предупреждение за начина, по който се формира съгласието. За пътя до онази точка, в която доброволното престава да бъде наистина доброволно.

В днешна България паралелът е особено деликатен. Ние живеем сред остатъчни структури на мислене. Подозрителността, склонността към конспиративни обяснения, недоверието към институциите, вярата в месии (списъкът може да се допълва) – всичко това е като слаб радиационен фон от един отминал и неприключил съвсем свят. Рубашов е интелектуалец, който твърде дълго е оправдавал компромисите си с по-голямата цел. В българския контекст тази фигура е архетипна. Такива са както участниците в изграждането на социалистическата държава, така и съвременните уж реалполитици, които обясняват всеки компромис с прагматизъм.

Ако при Кьостлер героите умират за идеята, днес по-често биха я разменили за нещо с по-широко валутно обращение. Ако тоталитаризмът е бил трагедия, посттоталитарното общество понякога прилича на фарс с елементи на черен хумор, който ти засяда в гърлото. Вацлав Хавел е описал точно тази трансформация. „Животът в лъжа“ е ежедневие, от което е изтекъл целият драматичен заряд и е останала само инерцията. Кьостлер описва света, в който хората умират за абсурда. Хавел разказва за света, в който хората живеят с него, без дори да го забелязват. Днес сме някъде по средата.

Стилът на Кьостлер е сух, аскетичен, лишен от излишна литературна тлъстина и това усилва усещането за безизходица. Отсъства всякакъв лиризъм и опит за утеха. Прозата е оголена до кост. Всяка дума е под подозрение и може би точно в това се съдържа скритата тема на романа.

В тоталитарния свят самият език е развален и заразен.

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


Никой от нас не чете единствено най-новите книги. Тогава защо само за тях се пише? „На второ четене“ е рубрика, в която отваряме списъците с книги, публикувани преди поне година, четем ги и препоръчваме любимите си от тях. За нея медията „Тоест“ е отличена с Националната награда „Христо Г. Данов“ (2025) за принос в представянето на българската книга.

Рубриката е част от партньорската програма Читателски клуб „Тоест“, благодарение на която активните дарители на „Тоест“ получават 20% отстъпка от коричната цена на всички книги на включените издателства. Изборът на заглавия обаче е единствено на авторите Стефан Иванов, Севда Семер и Антония Апостолова, които биха ви препоръчали тези книги и ако имаше как да се разходите с тях в книжарницата. 

The Hugo evolution: Engineering Grab’s unified, one-click data ingestion platform with Apache Flink

Post Syndicated from Grab Tech original https://engineering.grab.com/one-click-data-ingestion-platform-with-apache-flink

Introduction

Data drives every decision we make at Grab. As our operations scale, so does our need for robust, real-time data ingestion and processing frameworks. Enter Hugo: our self-service data platform that has long empowered teams to seamlessly route data into our Data Lake. Today, Hugo is evolving. We have taken previously siloed onboarding workflows and transformed them into one seamless, unified journey to truly democratize data ingestion and maximize efficiency.

In this blog, we’ll share how Hugo turns complex engineering hurdles into a frictionless, self-service reality. By moving away from siloed workflows, we’ve achieved a unified pipeline experience where one-click RDS CDC and self-service Kafka ingestion are the new standard.

Background

Figure 1. Hugo – Ingests data from every source into Grab’s data lake.

Hugo was originally designed as a self-service platform for batch-oriented data ingestion into the Data Lake, built on a single computation engine, Spark. It provided a centralized and streamlined onboarding experience for data sources such as MySQL, Aurora, PostgreSQL, and DynamoDB.

As the organization’s data platform evolved toward near real-time ingestion, Hugo expanded to support streaming pipelines from Kafka and MySQL binlog. This evolution introduced a more distributed architecture, where ingestion workflows spanned multiple systems, including Kafka Connect, Sprinkler (an in-house Go-based S3 writer), and Hugo.

The siloed past: A multi-platform hurdle

While powerful, the expanded architecture introduced significant onboarding friction. Creating a single data pipeline now requires users to coordinate across multiple platforms, each with its own configuration model and operational semantics. As a result, the onboarding journey became fragmented and difficult to navigate, especially for new users.

The common challenge during onboarding was helping users understand how configurations mapped across systems.

For MySQL CDC pipelines, users often asked, “I’ve already configured Kafka Connect, what values do I need to provide in Hugo?” after setting up a Kafka Connect job. This revealed a gap in abstraction between systems, requiring users to manually translate concepts and configurations across different platforms.

For Kafka pipelines, users frequently struggled with schema evolution in the data lake. Common questions included: “How should I update the data lake schema?” and “I’ve already updated the Protobuf schema for this Kafka topic, why isn’t the latest schema reflected in the data lake?” These issues highlighted unclear expectations around schema propagation and synchronization across the pipeline.

This multi-step, cross-system dependency increased cognitive load, slowed down onboarding, and created coordination overhead between platform teams and users.

The Hugo evolution: A unified ingestion platform

Hugo’s new, deeply automated ingestion framework, built with a custom automation layer and Apache Flink, has unified workflows and retired Sprinkler and Kafka Connect. This evolution converted manual, artisanal work into a streamlined, self-service experience, with custom automation serving as the “intelligent chassis” for the entire user journey.

The Hugo ingestion architecture: Engineering a unified flow

One-click MySQL CDC pipelines

The transition to a unified modernized pipeline powered by Flink CDC shifts the data ingestion architecture from a fragmented, high-maintenance toolchain into a single, end-to-end orchestrated platform. By reading the database binlog directly and embedding the lifecycle within a centralized control plane, the modernized approach drastically reduces operational overhead, eliminates data mismatch risks, and cuts onboarding times from days to minutes. Below are the core advantages of adopting Flink:

  • Minimal operational overhead: It reduces the footprint from 4 disparate components (Kafka Connect, topics, Sprinkler app, and Spark) to just 2 core components managed via a single control plane.
  • Eliminated schema risk: It replaces brittle, manually coded Go DTOs, which caused frequent schema deviations, with automated schema detection and dynamic validation.
  • Streamlined architecture: It eliminates the intermediary Kafka hop. Flink reads the MySQL binlog directly and pushes straight to a queryable Hive table via an integrated Spark compaction process.
  • Instant onboarding: It shifts deployment from a multi-team, ticket-heavy process taking days to a single-engineer, self-service setup completed in minutes.
Figure 2. Data ingestion with MySQL CDC to data lake

Self-service Kafka ingestion

The most significant architectural shift in the self-service Kafka ingestion pipeline is the move from manual, fragile schema handling to an automated, resilient system. This comparison highlights the operational pain points eliminated by adopting Flink’s approach.

Legacy Sprinkler approach (manual and static)

  • Static registration and hardcoding: It required manual registration of streams within the Go monorepo and relied on hardcoded mappings in entities.go to convert Protobuf to Avro.
  • Custom dependencies: Avro schema was generated indirectly from custom DTO structs, not directly from the Protobuf definition.
  • Manual schema evolution: Any field change required a multi-step manual process: updating .pb.go and entity files, followed by a manual pipeline rebuild.

New Flink approach (automated and dynamic)

  • Dynamic runtime fetching: Flink pipelines dynamically retrieve the Protobuf schema from Confluent Schema Registry on startup, removing the need for hardcoding and manual stream registration.
  • Reduced operational overhead for schema changes: Schema updates are propagated through the CI pipeline to the Schema Registry, removing the need for hardcoded mapping changes. The Flink pipeline can detect updated schemas and resume from the latest checkpoint after restart, though manual restart intervention is still required.
  • Click-to-query: Engineers can now ingest streaming data from Kafka topics into queryable Hive tables through a few clicks in the Hugo UI. Hugo automatically orchestrates the multi-stage background work, from Flink consumption and S3 writing to Spark compaction, ensuring data is query-optimized and ready for immediate use.
Figure 3. Data ingestion with Kafka to Datalake.

Impact

The platform’s new onboarding workflow has significantly reduced a previously multi-day process to mere minutes, enabling faster iteration and improving overall onboarding efficiency. This dramatic change has fundamentally altered how our teams interact with data.

Figure 4. Kafka Flink.
Figure 5. CDC Flink.

The onboarding workflow is intentionally designed with early validation guardrails to proactively surface prerequisite and governance-related issues before pipeline creation proceeds.

  • For Kafka sources, user drop-offs between the “Create Kafka Source” and “Kafka Sink” stages are primarily driven by validation checks such as topic ownership verification and topic activity requirements, for example topics with zero message volume. Additional drop-offs between the “Kafka Sink” and “Create Source Pipeline” stages typically occur when the proposed output table name already exists in the data lake, preventing duplicate table creation.
  • For MySQL sources, drop-offs are mainly associated with unmet database onboarding prerequisites, including credential setup, binlog user configuration, binlog format requirements, and binlog expiration settings.

In addition, the streamlined self-service experience encourages exploratory usage, allowing teams to familiarize themselves with the onboarding workflow and platform capabilities before fully committing to pipeline creation.

Summary

The new architecture engineered a custom automation layer that successfully retired the reliance on Kafka Connect and Sprinkler for the data lake, turning artisanal work into a streamlined, one-click experience. This transformation provides a direct boost to developer productivity.

The key impact metrics are:

  • Onboarding time reduction: The time required to set up data pipelines has been dramatically reduced and is now measured in minutes.
    • Kafka pipelines: approximately 6 minutes.
    • MySQL CDC pipelines: approximately 3 minutes.
  • Adoption: Since the release, the number of new Kafka and CDC pipelines onboarded in the last year is more than the total number of pipelines onboarded in the previous five years.

What’s next

These enhancements are just one step in our broader vision for optimized and self-service data ingestion. Currently, Flink is the default only for Kafka source pipelines. Flink onboarding for MySQL CDC pipelines is impact- and cost-driven. Our strategic roadmap includes:

  • Next-generation formats: We are investigating the adoption of Apache Iceberg as the data lake table format to further improve pipeline SLA and costs, and improve performance.
  • Seamless schema evolution: Schema changes still require some manual effort from pipeline owners, including manually restarting Flink pipelines. In Hugo, we aim to make schema evolution a zero-touch experience by automatically detecting changes, validating compatibility, and updating tables without disruption.

Join us

Grab is Southeast Asia’s leading superapp, serving over 900 cities across eight countries (Cambodia, Indonesia, Malaysia, Myanmar, the Philippines, Singapore, Thailand, and Vietnam). Through a single platform, millions of users access mobility, delivery, and digital financial services, including ride-hailing, food delivery, payments, lending, and digital banking via GXS Bank and GXBank. Founded in 2012, Grab’s mission is to drive Southeast Asia forward by creating economic empowerment for everyone while delivering sustainable financial performance and positive social impact.

Powered by technology and driven by heart, our mission is to drive Southeast Asia forward by creating economic empowerment for everyone. If this mission speaks to you, join our team today!

Vulnerabilities in various GTK-based PDF readers

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

Michael Catanzaro has disclosed a
command-injection vulnerability
affecting a number of GTK-based PDF
readers; exploits included:

They contain a script for building malicious polyglot PDFs that are
simultaneously both valid PDF files and also valid ELF
binaries. When the user opens the PDF in the PDF viewer and clicks
on a malicious link embedded in the PDF, the PDF abuses the command
injection vulnerability to load itself as a GTK module using the
`–gtk-module` command line flag. It can then execute arbitrary
code via its library constructor. That flag was removed in GTK 4,
which is why the vulnerability is much less serious for Papers than
it is for Evince, Atril, and Xreader.

2026-05-21 OpenFest 2026

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

Та, ще случваме OpenFest 2026. В Интерпред, 7-8 ноември 2026.

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

Има въпросът “защо чак ноември” от една група хора, които държат много да е в средата на октомври. Отговорът е сравнително прост – в нашата държава нищо не се случва до края на август, а септември хората полудяват да се занимават с училища и т.н.. Съответно, ако имаме събитие, което искаме да е в средата на октомври и неговата програма да е online поне месец, то тя трябва да е готова в средата на септември. Което значи, че последните предложения за лекции трябва да са дошли до първата седмица на септември, за да може програмния комитет във втората седмица да направи програмата.
Разбира се, и двете не се случват – лекторите се бавят, пращат в последния момент и са заети, програмния комитет не успява да се събере и т.н. и т.н.. Тук дори не обсъждам всичките други неща, дето имат да се подготвят за два месеца и нещо от хора, които това го правят в малкото си свободно време.

Има и въпросът “защо да го правим”. Тези дни трябваше да пиша нещо по темата, основно за да убеждавам малко спонсори, че има смисъл да ни спонсорират, и аз самият се замислих, защо изобщо го правим?

В последните години беше горе-долу ясно – фирмите имаха нужда от хора, хората идваха на OpenFest, виждаха там фирмите и се харесваха по някакъв начин. Сега обаче всички са се скатали по всякакви причини, някои уважителни (фалираха), някои не (“AI-то ще премахне нуждата от хора”), и всякакви по средата.

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

Open-source технологиите всеки може да ги пипне, и да си играе с тях. Те са някакъв основен притегателен център на ентусиасти и хора, дето технологиите и всичко такова им е интересно, които се занимават с това и в свободното си време.

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

Същата тая група се разширява в общи линии като заразна болест – като има някакво количество от тези хора някъде на публично място (ако ще и да е само един), някакви други хора виждат, че тая нашата област е интересна и забавна, и се захващат и те.

Та, една от целите на OpenFest е била да даде място за срещане и изява на тази група. Като лектори, посетители, доброволци – всеки каквото му е на сърце.
(има около 400-500 човека, минали като доброволци през събитието по годините, и голяма част от тях след това отидоха да организират/правят неща, за които се научиха при нас, което винаги много ме е радвало)

(по същия начин, it турнето, дето се случва и което почнахме едно време, има за идея да направи същото, в по-малък мащаб, но из страната. Защото, като изключим Пловдив с TuxCon и едно време PlovDev, няма някой да се занимава с такива дейности.
Другото такова полезно място са hackerspace-овете, които обаче съвсем намаляха в последно време, и освен init Lab и VarnaLab, донякъде BurgasLab, не са останали. Те също са много важни, но за тях друг път)

Без тези събития и общностите, които се поддържат, съдбата на тая общност не е особено ясна. Няма да се изхвърлям и да казвам, че без нас общността ще умре, но определено няма да помогне. Може би аз съм в някаква такава странна позиция, но аз основно виждам как някакви по-малки групи се затварят и няма как да обменят идеи, няма някакви свестни дори online форми. За сметка на това конференции като FOSDEM (където участвам в организацията) и Chaos Communications Congress нямат възможност да съберат всички желаещи на едно място, и се вижда колко полезно е да се случват.

Та, тази година ще се случи. Не знам за следващата. Може пък да ни е дошло време да отмрем, знае ли човек 🙂

AWS KY3P report now available for third-party supplier due diligence

Post Syndicated from Michael Murphy original https://aws.amazon.com/blogs/security/aws-ky3p-report-now-available-for-third-party-supplier-due-diligence/

We’re excited to announce that Amazon Web Services (AWS) has completed the S&P Global Know Your Third Party (KY3P) assessment of its security posture. This assessment demonstrates our continued commitment to meet the heightened expectations of cloud service providers. Customers can now use the AWS KY3P assessment to reduce their supplier due diligence burden.

KY3P, also known as the S&P Global Comprehensive Assessment (formerly TruSight), is a validated, evidence-based assessment designed to support regulatory compliance and efficient, standardized risk data exchange between AWS and our clients. KY3P’s globally recognized methodology provides organizations with enhanced visibility into supply chain risks by validating the actual implementation and operation of controls – not just policies or attestations.

As cloud adoption accelerates across industries, AWS has become a critical component of customers’ third-party environments. Regulated customers, such as those in the financial services sector, are held to high standards by regulators and auditors when it comes to exercising effective due diligence on third parties.

To better manage risks from their evolving third-party environments and drive operational efficiencies, many customers rely on third-party risk management services such as KY3P. In support of these efforts, AWS has completed its annual KY3P security posture assessment, conducted by KY3P security assessors.

KY3P’s risk assessment methodology includes over 200 controls across 26 control categories and nine risk domains. These topics include Privacy, Network Management, Logical Access Management, and Physical and Environmental Security. The assessment criteria were developed by a consortium of leading financial institutions.

Customers can use the KY3P results to map AWS against commonly used industry frameworks and standards, such as NIST CSF v2, PCI DSS 4.0, and ISO 27001:2022 to instantly gain visibility into controls coverage.

For details on how to access the report, see our AWS KY3P assessment page.

If you have feedback about this post, submit comments in the Comments section below. To learn more about our other compliance and security programs, see AWS Compliance Programs.

Michael Murphy

Michael is a Compliance Program Manager at AWS where he leads multiple security and privacy initiatives. Michael has over 14 years of experience in information security and holds a master’s degree and a bachelor’s degree in computer engineering from Stevens Institute of Technology. He also holds CISSP, CRISC, CISA, and CISM certifications.

The collective thoughts of the interwebz