Идвам да оставя линка за copy.fail за исторически цели. Много е интересно как има уязвимости, които са well known и не са пачнати от години.
dev.bg WordPress ot keep yourself positive
Добре де, нещата малко ескалираха при подготовката за DEV.BG – от bulletpoint lecture (която лесно може да отиде към death by powerpoint) взех, че направих intentionally vulnerable WordPress plugin и тема, които са с повечето известни уязвимости (като гравитацията е около OWASP® Foundation). Всичко това много добре документирано (умря циганката …) и с абсолютно всички примери, които дадох и на почти двучасовия workshop.
Част от темите, които засегнах бяха класическите (и най-разпространени):
* Cross-Site Request Forgery
* Insecure Direct Object Reference
* Remote Code Execution
* Supply Chain Attack
* SQL Injection
* и още няколко дребни
Всичко това в docker compose (с команди как да си вдигнем всичко и как да го затрием), който тръгва точно по начина по който вървеше при мен на демото. И понеже моята същност се връща отново и отново в първата ми голяма сцена на QA: Challenge Accepted когато говорих за performance testing не се сдържах и добавих опция да напълним празния WordPress с доста данни (които са близко до реалните такива по това, което виждам поне в www.nedko.info ) и да направим benchmark с тези данни, след оптимизация (каква – в документацята) като има дори и PoC за с и без Redis caching.
Вътрешното ми чувство обаче ме спря ден преди събитието и реших, че понеже този webinar така и така ще отнеме половин работен ден по-добре да дам всичко от себе си. И ето, че вече имаме и скенер за уязвимости (wp-scan), дори и демо за bruteforce с enumeration & dictionary атака, nginx и PHP препоръки за фиксове на OS ниво и сигурно още неща, които забравям.
Мисля, че това е най-пълния списък, който съм намирал в интернет по темата хем за сигурност, хем за WordPress особено като се има предвид и демо плъгина и темата. Всичко това под MIT лиценз.
Линк към репото:
https://github.com/NedkoHristov/WordPress-Security-or-keep-yourself-positive-dev-bg-webinar
Благодарности на Nemetschek Bulgaria, които за пореден път ми се връзват на налудничевите идеи (скоро идва анонса на нещо много голямо) и на DEV.BG с които организацията както обикновено, е страхотна.
Излишно е да казвам, че всичко това е само за обучителни цели.
Ако някой има интерес към материята и иска нещо, което не е вътре – пишете, интересно ми е и ще надграждам.
// копие на поста ми от linkedin
26042026
Напоследък не пиша много, но и програмата ми е просто невъзможна.
Тази седмица бях в София за почти цялата седмица, а в Понеделник правих първия си webinar, който по стара моя традиция направих по-дълъг, но не с 2-3 минути както по конференциите, а с почти час – стана общо 1:50 часа в който си говорихме (е, аз говорих само, беше малко странно без feedback), се получи добре. Този път си начесох крастата НАЙ-НАКРАЯ и цялото нещо беше 80% демо – команда по команда
Смятам, че ще е полезно на хора от бранша за да видят колко е лесно да счупим нещо и колко е важно да разбираме как работят отдолу нещата.
Тук са всички attack vectors които дискутирахме. За всяка една от тях имаше три задължителни точки:
- Attack surface
- Expected result
- Evidence
Освен webinar-а бяхме по срещи от сутрин до вечер и петък вече бях с единия крак в гроба.
Но пък ми се случи нещо интересно – на връщане в самолета до мен човек тъкмо приключи общатта книга на Лий Чайлд и брат му – Андрю Чайлд – “Изходна стратегия”. Беше ми любопитно какво мисли, защото четох противоречиви мнения и след кратко мнение по темата ми я подаде и каза – “Твой ред е да я прочетеш”. Напомням, че ние мъжете получаваме по 1-2 подаръка през годината – на Нова Година и на рождения ден (евентуално) така, че за мен беше много приятен random act of kindness. Започнах я и изядох първите 30-тина страници в самолета – изглежда обещаваща.
Освен ВСИЧКО ОСТАНАЛО в четвъртък имахме vibe-a-ton в офиса в София – нещо като хакатон, но с фокус върху vibe coding-а. Оказа се, че съм супер назад с AI оркестрирането. Бях в много силен отбор със Стоян и Виктор, които са ми колеги от ДевОпс отдела, но към края не ни стигна времето и не можахме да produce-нем нещото (заради, оказа се после, една nginx директива и това, че бяхме вдигнали Ollama, но в нея не бяхме стартирали Gemma 4). Обаче пък натрупах доста впечатления за vibe coding-а – ще споделям при първа възможност. Само да кажа, че ни счупиха маркетинг отдела в който няма нито един човек, който разбира от програмиране. Не е зле, а? Изводи, изводи.
Понеже последните дни не бях в града съответно не съм и с децата, които адски ми липсват.
И реших да хвърля малко дяволи преди да съм се побъркал. Вчера излязохме с Явката да покараме по черно около Аладжа Манастир и с компания чувството е супер различно. Моя профил е на шосе и в гората още ми е трудно да се ориентирам по маркировка, дупки, клони (и диви прасета, които ни излязоха Октомври месец когато с Тедо карахме подобен маршрут, но по тъмно), но с някой опитен пред мен беше топ. Хвърлих всички дяволи и си казах – това е, мина ми.
Е, не ми мина.
Снощи беше от трудните вечери с малко сън и много събуждане, да не ви кажа и какви неща сънувах … Та на сутринта си взех екипировката, проверих колелоти и хайде към Балчик. Скоро ми предстои шосейно състезание и трябваше да си видя лимитите. Работата не е особено добре – за тази година съм прекарал само 17 часа на колелото и 300 км с под 3км Д+, което е супер малко. Но пък си изпънах дяволите по баирите на Оброчище, след Балчик и обожемой – неочвешкия баир, който всъщност включва два – този на Златни Пясъци и този след него към чешмата на Аладжа Манастир. Имаше моменти в които се чувствах много силен, но след 50-55 км. нещо се обърка и бях на ръба на бонкинг-а последните километри. Уж спазвах формулата за прием на храна и вода, but go figure. Определено карането беше безценно, защото:
- Изводи около седалката (върнах стара такава) и колчето (което почиствах и съответно преместих с няколко мм по-нагоре);
- Определено НЕ харесвам Shimano Synchronized Shift – издъни ме на няколко пъти, а прехода между скоростите не винаги е плавен;
- Трябва да започна да си слагам кърпа под каската, защото днес една пчела ми влезе в каската (не беше забавно докато не я махнах от косата си, добре, че имам много, а пчелата не беше със суисидни наклонности);
- Трябва да започна да си слагам слънцезащитен крем – само от две карания и направих тракторските ръкави и крачоли;
- Нямам нужда от всички чанти по колелото когато имам pouch – върши страхотна работа, даже се замислям за второ
- Накрая, но абсолютно не на последно място е факта, че не се пречупих, макар, че по баира към чешмата на Аладжа Манастис бях труп не се отказах. Това беше важен тест за мен. В края на седмицата ще видим колко няма да се пречупя, че ме чака 95км състезание
19042026
Моя лаптоп май е напът да сдаде багажа. Някакви background процеси го убиват бавно. До сега не съм виждал толкова натоварена машина ми се струва.
~ w ✔
0:55 up 31 mins, 2 users, load averages: 147,36 45,88 22,65
USER TTY FROM LOGIN@ IDLE WHAT
nedko console - 0:54 - -
nedko s000 - 0:55 - w
~ 14042026
What a time to be alive.
Другата седмица имам workshop по любима тема – Security в WordPress и още не ми е останало време да си структурирам нещата. Освен това ще говоря скоро и по тема в орбитата на горната, но на много по-голяма сцена. Освен това с mentee-то бутаме ДевОпс курса по mentor the young – всичко се развива добре, но богу – свършиха ми ръцете (и мозъка) да мултитасквам на всички фронтове.
In other news ходих да карам по пътеките на Аладжа Манастир надявайки се да успея да направя добро време, защото с колегите вече говорим да ходим на Витоша 100 и освен, че изобщо не бях направи ресърча си правилно и екраните на Garmin-а ми бяха абсолютно безполезни спирах сигурно 20 пъти да гледам къде точно ми е track-а. Аматьорски грешки. Накрая за 23-24 км. направих средна скорост от около 10км/ч, което е плачевно. Последните около 5км са асфалт и реших там да натисна малко да си оправя статистиката и … спуках гума. Дори и бозата вътре не можа да закърпи положението и карах на капла и едвам-едвам докато се прибера.
После естествено мих колелото около 40 минути и изцапах половината къща, която предния ден бях почистил хубаво.
В това отношение поне шосейката е доста по-лесна за поддръжка.
И говорейки за шосето имам едно 100км каране скоро, което миналия път като карам у-м-р-я-х, да видим този път как ще е. Предполагам, че пак ще пукна по баирите и ще си съжалявам житейските избори.
Трябва да свържа часовника си с някакъв healthcheck service за да имам healthchecks та ако ритна букета някъде да пише в блога. Това си е бизнес идея!
Връщам In other news секцията, която понякога ми липсва като си гледам старите постове така, че:
In other news:
- Макар и малко стара новина – изтече source code-а на Claude. Доста се изписа по него като на мен ми хареса сбития разказ на Fireship по темата. По-горе е темата в дълбочина. Едно от TLDR-тата е, че кода не е нещо космическо и нечувано, а вътре има малко интересни неща като вътрешен assistant Buddy, wtf detector, доста коментари (това за да може да си дописват нещата с AI по-ефективно) и други интересни неща.
08042026
Болен съм. Снощи спах около 2 часа и днес съм дроб. И още със събуждането ми в главата проехтя далечното ехо на моето юношество експериментирайки с всякаква стрнна музика и по-точно единствената на The Exploited, на която знам текста, хъхъ:
Хубавото е, че преди да ме събори каквотомиетам вчера направи може би първата тренировка на тренажора, която ме накара да се почувствам уверен в скорощното състезание, което ме очаква. Много назад съм, но съм уверен, че ще успея да завърша, макар и близо до DNF. През годините установих, че упорството ми на седалката е феноменално (за моите килограми и липса на редовни тренировки).
След тренировката излязох да си взема нещо за готвене от магазина, първо стъпало и си изкривих глезена. :D То да беше едно.
02042026 – щастие
С децата сме и всичко върви много добре – всеки ден е забавление, а треската за динозаври ги е завладяла напълно.
Освен това в Storytel пуснаха последната книга от серията за Бънк Ромеро (и обявена за последна, повече няма да има) – Мрак, която чакам от доста време, а преди малко получих notification, че “Жигосаният” на Робърт Гарлбрайт.
Днес споделих и, че за втори пореден сезон съм ментор в Mentor the young. За това ако на някой му е интересно – да пише някъде из коментарите.
Щастлив съм.
01042026
Дори гиганти като Anthropic не са имунизирани срещу аматьорски грешки в CI/CD процесите си. Вчера (31.03.2026) станахме свидетели на това как целият source code на новия им CLI инструмент – Claude Code – се оказа публично достъпен в npm. Причината? Елементарна – sourcemap файл.
Какво се случи всъщност?
В стремежа си към fast delivery, екипът е публикувал пакета в npm, включвайки .map файлове. За тези, които не са в темата: sourcemap-ът е мостът между компилирания, минифициран код и оригиналния TypeScript/JavaScript. С негова помощ разкодирането на логиката на Anthropic отнема точно три команди.
Резултатът е пълен достъп до архитектурата на инструмента, вътрешните API извиквания и логиката на взаимодействие с модела.
Ето и целия блогпост – https://kuber.studio/blog/AI/Claude-Code’s-Entire-Source-Code-Got-Leaked-via-a-Sourcemap-in-npm,-Let’s-Talk-About-it с много детайли и deep dive-ins.
18032026
Разписвам един голям пътепис за Белфаст, но ще отнеме време.
Но пък за друго пиша днес – преди няколко дни се сетих за Globus и единствената тяхна песен, която знам – “Save me”.
Save me я използвах когато исках да се счупя на колелото. Имам ярък спомен как бях решил да се строша на колелото (още бях със стоманения красавец) и около с. Крушари бях направил средна скорост, която беше нечовешка (за мен). И през цялото време в слушалките беше “Save me”.
Как да е, сетих се за песента, пуснах си я и после понеже не бях решил какво ще слушам оставих албума да се завърти. И ме изненада супер много. От тази случка до днес съм въртял само него в Spotify.
Запознайте се с Globus – Break from this world
Абсолютно разнообразие от стилове и усещание в един единствен албум прави цялото изживяване чудесно, защото не омръзва. Препоръчвам повечето песни. Голямо разнообразие и страхотна артистичност.
16022026
Не безизвесния Луис Росман говори за AI камерите в Happy. Освен това същите са опитали да му свалят канала: