Post Syndicated from digiblur DIY original https://www.youtube.com/watch?v=cqZHpwSYtAc
Comic for 2025.04.26 – Party
Post Syndicated from Explosm.net original https://explosm.net/comics/party
New Cyanide and Happiness Comic
The NT-2 was peak Sony engineering…and eccentricity
Post Syndicated from Techmoan original https://www.youtube.com/watch?v=sjaWQaUS52Y
Installing two Internal SSDs in the MikroTik ROSE
Post Syndicated from Rohit Kumar original https://www.servethehome.com/installing-two-internal-ssds-in-the-mikrotik-rose/
We install two internal SSDs in the MikroTik ROSE using Silicon Power A55 1TB SATA M.2 drives to get to 22 total SSDs in the system
The post Installing two Internal SSDs in the MikroTik ROSE appeared first on ServeTheHome.
Седмицата (19–26 април)
Post Syndicated from Надежда Радулова original https://www.toest.bg/sedmitsata-19-26-april/

Тези дни ни напусна един от малкото хора на планетата, на когото беше дадена власт, но и сърце да променя света. Франциск, роден Хорхе Марио, или както преди години го нарече невръстната ми тогава дъщеря – Дядо Папа. Неевропеец, но потомък на емигранти от Европа. Железопътен работник, химик, теолог, йезуит, философ. Любител на музиката и футбола. И най-вече човек, когото наистина го беше грижа за бедните, отритнатите и страдащите.
Рядко упражняването на власт върви редом с проявите на любов към ближния. В лицето на папа Франциск това изглеждаше не просто възможно, но и напълно естествено. Дори когато не бяхме съгласни с някои от разбиранията му по тази или онази разделяща обществата ни тема, нямаше как да не оценим лъчащите от него топлосърдечие и добронамереност. Със смъртта му у мен се събуди страхът – ще има ли други като него? Възможни ли са все още такива хора, които да гледат света проникновено и с любов, а заедно с това да са готови да водят битки, за да го променят? Възможно ли е да обичаме света, без да приемаме всичко, което ни поднася всекидневно? И не е ли тази трудно постижима amor mundi (по Хана Аренд) единственият път към дълбока и трайна промяна – на нас, на света…
Страховете ми – както, убедена съм, и вашите – не са безпочвени. Как иначе да си обясним онова, което се случи „в събота пред Великден“, както многозначително би се изразила баба ми, ако беше жива. След почти десет години нищонеправене и шикалкавене властта, светската власт, в лицето на Община „Илинден“, нахлува в една микрообщност и разрушава жилищата на хората. Бебета, деца, болни, възрастни, немощни хора, остават дни наред под небето. И тук дори не споменавам, че актът е в разрез с предписанията на Европейския съд по правата на човека сградите да не бъдат събаряни, преди да се осигури адекватен подслон на живеещите във въпросната махала. Това, което най-вече ме гложди, е, че едни хора събарят къщите на други хора просто ей така, без да се замислят за последствията, без да им трепне сърцето, че времето е нестабилно, че идва голям празник, че някои от прокудените от домовете си – в състоянието, в което са – може и да не понесат живота под открито небе, па макар и недалеч от центъра на европейска столица.
Но извън емоционалната страна, проблемът има правни, административни, политически, социални и други аспекти. Точно за тях става дума в „Незаконната постройка на българската законност“ – анализ на Светла Енчева по темата.
Оставаме още малко в столицата, защото повечето белѝ тръгват именно оттам. Повече за това четете в седмичния анализ на Емилия Милчева „Къде отиваш София? Към нови избори“. Този път фокусът е върху излизането на Борис Бонев и „Спаси София“ от коалицията зад кмета Васил Терзиев. Защо се стигна дотук и как това ще повлияе на бъдещи местни, но и национални избори.
И за да не изпуснем светлината от изминалата седмица съвсем да ни избяга, в рубриката „Тези хора“ ви срещаме с един наистина светъл човек. Ина Иванова разговаря с „Иван Люцканов от „Землевеж“: Достъпно, цветно и понятно“. Лично аз не бях попадала досега на инфографиките му и първият ми досег с тях, за който бях планирала да отделя 15 минути, продължи всъщност около два часа. Зарибяваща среща!
В тази (във всички смисли) отрезвяваща седмица Атанас Шиников продължава да ни замайва главите с разказа си за хашиша и неговите употреби в културата на ислямския свят.
Но и без да сте замаяни от хашиша, Михаил Ангелов ще ви отнесе главите със снаряд „Научни новини: Вълнести мишки, свирепи вълци и нови цветове“, в които освен за „възкресяването“ на изчезнали видове става дума и за един новооткрит цвят – невиждан досега нюанс на зеленото, наречен от учените olo.
Глави отнася и поредният монолог на Е.Т., от който излиза, че повсеместното положение „е за скенер“, и то незабавен – със или без направление.
А в рубриката „Стихотворение на месеца“ Мария Калинова обръща към нас винаги незавършения ни портрет – жест едновременно отрезвяващ, но и нелишен от надежда.
Преди да се разделим, нека изслушаме заедно една от любимите арии на покойния папа Франциск – Erbarme Dich от Баховия „Матеус пасион“ в изпълнение на великолепната певица и диригентка Натали Щуцман.
Смили се над мен, Господи,
заради сълзите ми.
Виж как сърце и очи
горко ридаят пред теб.
Смили се, смили се!
Никога не е късно да се покаем за грешките си и да се опитаме да ги поправим дори когато смятаме себе си за най-висшата инстанция (вж. недосегаемите „герои на деня“ по света и у нас).
Във време, в което любовта и подкрепата ни са неотложно нужни далеч не само в пределите на собствения ни дом, от сърце ви благодарим за подадената ръка, без която не бихме могли да продължим напред.
Приятно четене!
Dan Sickles’ Temporary Insanity
Post Syndicated from The History Guy: History Deserves to Be Remembered original https://www.youtube.com/watch?v=4YJMqvwtxSI
Friday Squid Blogging: Squid Facts on Your Phone
Post Syndicated from Bruce Schneier original https://www.schneier.com/blog/archives/2025/04/friday-squid-blogging-squid-facts-on-your-phone.html
Text “SQUID” to 1-833-SCI-TEXT for daily squid facts. The website has merch.
As usual, you can also use this squid post to talk about the security stories in the news that I haven’t covered.
[$] Debian debates AI models and the DFSG
Post Syndicated from jzb original https://lwn.net/Articles/1018497/
The Debian project is discussing a General Resolution (GR) that
would, if approved, clarify that AI models must include training data
to be compliant with the Debian
Free Software Guidelines (DFSG) and be distributed by Debian as
free software. While GR discussions are sometimes contentious, the
discussion around the proposal from Debian developer Mo Zhou has
been anything but—there seems to be
consensus that AI models are not DFSG-compliant if they lack training
data. There are, however, some questions about the exact language and
questions about the impact the GR will have on existing packages in
the Debian archive.
Metasploit Wrap-Up 04/25/2025
Post Syndicated from Christophe De La Fuente original https://blog.rapid7.com/2025/04/25/metasploit-wrap-up-04-25-2025/
AD CS workflow improvement with new PKCS12 features

Given the increasing popularity of AD CS misconfiguration exploitation in recent years, Metasploit has been consistently improving its capabilities in this area. This week’s release introduces a new certs command to the msfconsole, enabling users to manage PKCS12 certificates stored in the database, similar to the klist command. The certs command provides functionalities such as listing, searching, activating, deactivating, exporting, and deleting certificates.
- Available options:
msf6 auxiliary(scanner/smb/smb_login) > certs --help
List Pkcs12 certificate bundles in the database
Usage: certs [options] [username[@domain_upn_format]]
OPTIONS:
-a, --activate Activates *all* matching pkcs12 entries
-A, --deactivate Deactivates *all* matching pkcs12 entries
-d, --delete Delete *all* matching pkcs12 entries
-e, --export The file path where to export the matching pkcs12 entry
-h, --help Help banner
-i, --index Pkcs12 entry ID(s) to search for, e.g. `-i 1` or `-i 1,2,3` or `-i 1 -i 2 -i 3`
-v, --verbose Verbose output
- Example output
msf6 auxiliary(admin/dcerpc/icpr_cert) > certs
Pkcs12
======
id username realm subject issuer ADCS CA ADCS Template status
-- -------- ----- ------- ------ ------- ------------- ------
1 administrator mydomi.local /CN=muser /DC=local/DC=pro/DC=ad/CN=mssrv-dc-mydomi.local-CA mssrv-dc-mydomi.local-CA ESC1 active
Additionally, it automates PKCS12 authentication via the pkinit protocol when the kerberos option is set for authentication and no Kerberos tickets are found in the cache. This automation allows the framework to transparently utilize stored certificates to acquire Kerberos tickets, streamlining the authentication process for modules supporting Kerberos and Schannel protocols. Any modules that support these authentication protocols can benefit from this, as long as a suitable certificate is present in the database.
Here is an example with the scanner/winrm/winrm_cmd module. This shows how the Kerberos tickets are automatically retrieved using a PKCS12 stored in the database (see the output of the certs command above):
msf6 auxiliary(admin/dcerpc/icpr_cert) > klist
Kerberos Cache
==============
No tickets
msf6 auxiliary(scanner/winrm/winrm_cmd) > run verbose=true RHOSTS=10.100.32.94 Winrm::Auth=kerberos Winrm::Rhostname=mspro-dc username=administrator domain=mydomi.local DomainControllerRhost=10.100.32.94 cmd=whoami
[*] Using stored certificate for [email protected]
[+] 10.100.32.94:88 - Received a valid TGT-Response
[*] 10.100.32.94:5985 - TGT MIT Credential Cache ticket saved to /home/n00tmeg/.msf4/loot/20241218141549_default_10.100.32.94_mit.kerberos.cca_125955.bin
[+] 10.100.32.94:88 - Received a valid TGS-Response
[*] 10.100.32.94:5985 - TGS MIT Credential Cache ticket saved to /home/n00tmeg/.msf4/loot/20241218141549_default_10.100.32.94_mit.kerberos.cca_751667.bin
[+] 10.100.32.94:88 - Received a valid delegation TGS-Response
[+] 10.100.32.94:88 - Received AP-REQ. Extracting session key...
ad\administrator
[+] Results saved to /home/n00tmeg/.msf4/loot/20241218141553_default_10.100.32.94_winrm.cmd_result_401191.txt
[*] Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed
New module content (1)
BentoML’s runner server RCE
Authors: SeaWind and Takahiro Yokoyama
Type: Exploit
Pull request: #20046 contributed by Takahiro-Yoko
Path: linux/http/bentoml_runner_server_rce_cve_2025_32375
AttackerKB reference: CVE-2025-32375
Description: This adds an exploit module for an insecure deserialization in BentoML’s runner server which leads to unauthenticated RCE. Versions prior to 1.4.8 but after 1.0.0a1 are affected.
Enhanced modules (2)
Modules which have either been enhanced, or renamed:
- #20044 from jheysel-r7 – Adds a target to the service_permissions module supporting CVE-2025-21293, allowing a lower privileged user to add a DLL entry to
HKLM\System\CurrentControlSet\Services\Dnscache\and coerce execution of the DLL as system. - #20052 from bcoles – Moves the module
exploits/dialup/multi/login/manyargstoexploits/solaris/dialup/manyargs.
Enhancements and features (11)
- #19760 from cdelafuente-r7 – This introduces a new
certscommand that allows users to manage and display PKCS12 certificates stored in the credentials database, with options for searching, exporting, activating, and deleting certificates. It also enables automatic PKCS12-based Kerberos (and Schannel) authentication through PKINIT when no Kerberos ticket is cached, streamlining TGT acquisition using existing certificates. This enhances both usability and flexibility when working with certificate-based authentication workflows. - #20028 from jheysel-r7 – This change modifies existing pgAdmin modules by replacing some functionalities with new library for pgAdmin.
- #20049 from bcoles – Improves the check method metadata for
modules/exploits/mainframe/ftp/ftp_jcl_creds. - #20052 from bcoles – Moves the module
exploits/dialup/multi/login/manyargstoexploits/solaris/dialup/manyargs. - #20057 from bcoles – Improves the code quality of the example modules included in Metasploit.
- #20059 from bcoles – Improves the code quality of multiple
payloadmodules. - #20065 from bcoles – Improves the metadata and code quality for the
exploits/hpux/lpd/cleanup_execmodule. - #20066 from bcoles – Enhances the code quality of multiple
payloads/singlesmodules, and fixes nested method definitions in 6 pingback modules. - #20068 from bcoles – Improves the
exploits/solaris/sunrpc/sadmind_adm_build_pathandexploits/solaris/sunrpc/sadmind_execmodules to have check methods, improved metadata, and code quality. - #20069 from sjanusz-r7 – Allow overwriting reported module name within the
report_vulnAPI. - #20077 from adfoster-r7 – Update haraka module to work with newer Python 3.12 and above.
Bugs fixed (3)
- #20051 from bcoles – Fixes out of date metadata for the
exploits/dialup/multi/login/manyargsmodule, and fixes a logic bug code when handling bad characters. - #20063 from bcoles – Updates Ruby pingback payloads to correctly close the opened socket after use.
- #20064 from bcoles – Fixes IPv6 support in the
cmd/unix/reverse_php_sslpayload.
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
How the GitHub CLI can now enable triangular workflows
Post Syndicated from Tyler McGoffin original https://github.blog/open-source/git/how-the-github-cli-can-now-enable-triangular-workflows/
Most developers are familiar with the standard Git workflow. You create a branch, make changes, and push those changes back to the same branch on the main repository. Git calls this a centralized workflow. It’s straightforward and works well for many projects.
However, sometimes you might want to pull changes from a different branch directly into your feature branch to help you keep your branch updated without constantly needing to merge or rebase. However, you’ll still want to push local changes to your own branch. This is where triangular workflows come in.
It’s possible that some of you have already used triangular workflows, even without knowing it. When you fork a repo, contribute to your fork, then open a pull request back to the original repo, you’re working in a triangular workflow. While this can work seamlessly on github.com, the process hasn’t always been seamless with the GitHub CLI.
The GitHub CLI team has recently made improvements (released in v2.71.2) to better support these triangular workflows, ensuring that the gh pr commands work smoothly with your Git configurations. So, whether you’re working on a centralized workflow or a more complex triangular one, the GitHub CLI will be better equipped to handle your needs.
If you’re already familiar with how Git handles triangular workflows, feel free to skip ahead to learn about how to use gh pr commands with triangular workflows. Otherwise, let’s get into the details of how Git and the GitHub CLI have historically differed, and how four-and-a-half years after it was first requested, we have finally unlocked managing pull requests using triangular workflows in the GitHub CLI.
First, a lesson in Git fundamentals
To provide a framework for what we set out to do, it’s important to first understand some Git basics. Git, at its core, is a way to store and catalog changes on a repository and communicate those changes between copies of that repository. This workflow typically looks like the diagram below:

The building blocks of this diagram illustrate two important Git concepts you likely use every day, a ref and push/pull.
Refs
A ref is a reference to a repository and branch. It has two parts: the remote, usually a name like origin or upstream, and the branch. If the remote is the local repository, it is blank. So, in the example above, origin/branch in the purple box is a remote ref, referring to a branch named branch on the repository name origin, while branch in the green box is a local ref, referring to a branch named branch on the local machine.
While working with GitHub, the remote ref is usually the repository you are hosting on GitHub. In the diagram above, you can consider the purple box GitHub and the green box your local machine.
Pushing and pulling
A push and a pull refer to the same action, but from two different perspectives. Whether you are pushing or pulling is determined by whether you are sending or receiving the changes. I can push a commit to your repo, or you can pull that commit from my repo, and the references to that action would be the same.
To disambiguate this, we will refer to different refs as the headRef or baseRef, where the headRef is sending the changes (pushing them) and the baseRef is receiving the changes (pulling them).

When dealing with a branch, we’ll often refer to the headRef of its pull operations as its pullRef and the baseRef of its push operations as its pushRef. That’s because, in these instances, the working branch is the pull’s baseRef and the push’s headRef, so they’re already disambiguated.
The @{push} revision syntax
Turns out, Git has a handy built-in tool for referring to the pushRef for a branch: the @{push} revision syntax. You can usually determine a branch’s pushRef by running the following command:
git rev-parse --abbrev-ref @{push}
This will result in a human-readable ref, like origin/branch, if one can be determined.
Pull Requests
On GitHub, a pull request is a proposal to integrate changes from one ref to another. In particular, they act as a simple “pause” before performing the actual integration operation, often called a merge, when changes are being pushed from ref to another. This pause allows for humans (code reviews) and robots (GitHub Copilot reviews and GitHub Actions workflows) to check the code before the changes are integrated. The name pull request came from this language specifically: You are requesting that a ref pulls your changes into itself.

Common Git workflows
Now that you understand the basics, let’s talk about the workflows we typically use with Git every day.
A centralized workflow is how most folks interact with Git and GitHub. In this configuration, any given branch is pushing and pulling from a remote ref with the same branch name. For most of us, this type of configuration is set up by default when we clone a repo and push a branch. It is the situation shown in Figure 1.
In contrast, a triangular workflow pushes to and pulls from different refs. A common use case for this configuration is to pull directly from a remote repository’s default branch into your local feature branch, eliminating the need to run commands like git rebase <default> or git merge <default> on your feature branch to ensure the branch you’re working on is always up to date with the default branch. However, when pushing changes, this configuration will typically push to a remote ref with the same branch name as the feature branch.

We complete the triangle when considering pull requests: the headRef is the pushRef for the local ref and the baseRef is the pullRef for the local branch:

We can go one step further and set up triangular workflows using different remotes as well. This most commonly occurs when you’re developing on a fork. In this situation, you usually give the fork and source remotes different names. I’ll use origin for the fork and upstream for the source, as these are common names used in these setups. This functions exactly the same as the triangular workflows above, but the remotes and branches on the pushRef and pullRef are different:

Using a Git configuration file for triangular workflows
There are two primary ways that you can set up a triangular workflow using the Git configuration – typically defined in a `.git/config` or `.gitconfig` file. Before explaining these, let’s take a look at what the relevant bits of a typical configuration look like in a repo’s `.git/config` file for a centralized workflow:
[remote “origin”]
url = https://github.com/OWNER/REPO.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch “default”]
remote = origin
merge = refs/heads/default
[branch “branch”]
remote = origin
merge = refs/heads/branch
Figure 7: A typical Git configuration setup found in .git/config
The [remote “origin”] part is naming the Git repository located at github.com/OWNER/REPO.git to origin, so we can reference it elsewhere by that name. We can see that reference being used in the specific [branch] configurations for both the default and branch branches in their remote keys. This key, in conjunction with the branch name, typically makes up the branch’s pushRef: in this example, it is origin/branch.
The remote and merge keys are combined to make up the branch’s pullRef: in this example, it is origin/branch.
Setting up a triangular branch workflow
The simplest way to assemble a triangular workflow is to set the branch’s merge key to a different branch name, like so:
[branch “branch”]
remote = origin
merge = refs/heads/default
Figure 8: a triangular branch’s Git configuration found in .git/config
This will result in the branch pullRef as origin/default, but pushRef as origin/branch, as shown in Figure 9.

Setting up a triangular fork workflow
Working with triangular forks requires a bit more customization than triangular branches because we are dealing with multiple remotes. Thus, our remotes in the Git config will look different than the one shown previously in Figure 7:
[remote “upstream”]
url = https://github.com/ORIGINALOWNER/REPO.git
fetch = +refs/heads/*:refs/remotes/upstream/*
[remote “origin”]
url = https://github.com/FORKOWNER/REPO.git
fetch = +refs/heads/*:refs/remotes/origin/*
Figure 10: a Git configuration for a multi-remote Git setup found in .git/config
Upstream and origin are the most common names used in this construction, so I’ve used them here, but they can be named anything you want1.
However, toggling a branch’s remote key between upstream and origin won’t actually set up a triangular fork workflow—it will just set up a centralized workflow with either of those remotes, like the centralized workflow shown in Figure 6. Luckily, there are two common Git configuration options to change this behavior.
Setting a branch’s pushremote
A branch’s configuration has a key called pushremote that does exactly what the name suggests: configures the remote that the branch will push to. A triangular fork workflow config using pushremote may look like this:
[branch “branch”]
remote = upstream
merge = refs/heads/default
pushremote = origin
Figure 11: a triangular fork’s Git config using pushremote found in .git/config
This assembles the triangular fork repo we see in Figure 12. The pullRef is upstream/default, as determined by combining the remote and merge keys, while the pushRef is origin/branch, as determined by combining the pushremote key and the branch name.

Setting a repo’s remote.pushDefault
To configure all branches in a repository to have the same behavior as what you’re seeing in Figure 12, you can instead set the repository’s pushDefault. The config for this is below:
[remote]
pushDefault = origin
[branch “branch”]
remote = upstream
merge = refs/heads/default
Figure 13: a triangular fork’s Git config using remote.pushDefault found in .git/config
This assembles the same triangular fork repo as shown in Figure 12 above, however this time the pushRef is determined by combining the remote.pushDefault key and the branch name, resulting in origin/branch.
When using the branch’s pushremote and the repo’s remote.pushDefault keys together, Git will preferentially resolve the branch’s configuration over the repo’s, so the remote set on pushremote supersedes the remote set on remote.pushDefault.
Updating the gh pr command set to reflect Git
Previously, the gh pr command set did not resolve pushRefs and pullRefs in the same way that Git does. This was due to technical design decisions that made this change both difficult and complex. Instead of discussing that complexity—a big enough topic for a whole article in itself—I’m going to focus here on what you can now do with the updated gh pr command set.
If you set up triangular Git workflows in the manner described above, we will automatically resolve gh pr commands in accordance with your Git configuration.
To be slightly more specific, when trying to resolve a pull request for a branch, the GitHub CLI will respect whatever @{push} resolves to first, if it resolves at all. Then it will fall back to respect a branch’s pushremote, and if that isn’t set, finally look for a repo’s remote.pushDefault config settings.
What this means is that the CLI is assuming your branch’s pullRef is the pull request’s baseRef and the branch’s pushRef is the pull requests headRef. In other words, if you’ve configured git pull and git push to work, then gh pr commands should just work.2 The diagram below, a general version of Figure 5, demonstrates this nicely:

Conclusion
We’re constantly working to improve the GitHub CLI, and we’d like the behavior of the GitHub CLI to reasonably reflect the behavior of Git. This was a team effort—everyone contributed to understanding, reviewing, and testing the code to enable this enhanced gh pr command set functionality.
It also couldn’t have happened without the support of our contributors, so we extend our thanks to them:
@Frederick888for opening the original pull request@benknoblefor his support with pull request review and feedback@phil-blainfor highlighting the configurations we’ve talked about here on the original issue@neutrinocerosand@rd-yan-farbafor reporting a couple of bugs that the team fixed in v2.66.1@pdunnavantfor reporting the bug that we fixed in v2.71.1@cs278for reporting the bug that we fixed in v2.71.2.
CLI native support for triangular workflows was 4.5 years in the making, and we’re proud to have been able to provide this update for the community.
The GitHub CLI Team
@andyfeller, @babakks, @bagtoad, @jtmcg, @mxie, @RyanHecht, and @williammartin
-
Some commands in gh are opinionated about remote names and will resolve remotes in this order: upstream, github, origin,
<other remotes unstably sorted>. There is a convenience command you can run to supersede this:*gh repo set-default [<repository>]to override the default behavior above and preferentially resolve<repository>as the default remote repo. ↩ - If you find a git configuration that doesn’t work, please open an issue in the OSS repo so we can fix it. ↩
The post How the GitHub CLI can now enable triangular workflows appeared first on The GitHub Blog.
GCC 15.1 released
Post Syndicated from corbet original https://lwn.net/Articles/1018920/
Version 15.1 of the GNU
Compiler Collection has been released. Changes include implementing the
C23 dialect by default, a number of new C++26 features, experimental
support for unsigned integers in Fortran, a new COBOL front end, and
more. See the GCC 15
changes page for details.
Къде отиваш, София? Към нови избори
Post Syndicated from Емилия Милчева original https://www.toest.bg/kude-otivash-sofia-kum-novi-izbori/

Накъде отива София заедно с една трета България в нея? В политически план това е въпрос на живот и смърт за „Продължаваме промяната“ и „Демократична България“, чието разрешаване ще повлияе и на разпределението на силите в българската политика. Защото който загуби София, губи не само най-големия електорат, а и легитимност като алтернатива. А когато „промяната“ започне да губи в собствения си двор, другите вече се подреждат край масата, на първо време – за да предизвикат нови кметски избори в София.
Тон даде излизането на Борис Бонев и „Спаси София“ (СС) от коалицията зад кмета Васил Терзиев, което наруши крехката стабилност. (По съдебен път кметският пост също се атакува – с делото за касиране на изборите през 2023 г. заради допуснати нарушения. Наскоро то бе отменено от Върховния административен съд (ВАС) и върнато за ново разглеждане на друг състав на Административен съд – София-град.)
Със своя позиция заради случващото се вече излязоха общинските съветници от „Синя България“, които подкрепят ГЕРБ–СДС, но отдавна търсят път и към ДБ (без ПП).
Предлагаме обединение за дясно управление на Столична община не около някого, а в името на съгласие за провеждане на комплекс от десни политики в интерес на софиянци. Общинският съвет трябва да прояви волята си и да наложи посока за развитие на общината като алтернатива на хаотичното управление на администрацията на кмета и разпада и скандалите между партиите в Общинския съвет.
Управлението на столицата от Терзиев, подкрепата за когото намаля с излизането на СС от издигналата го коалиция, е от значение за ръста или спада на избирателите на ПП–ДБ. В средата на мандата бездруго липсващото мнозинство зад него в Столичния общински съвет (СОС) отъня до 14 души, след като осемте общински съветници на СС се отделиха в самостоятелна група. Бонев свали доверието си от коалицията с ПП–ДБ и я напусна.
Според Терзиев – започнали са предизборна кампания. Според Бонев – защото в Столичната община (СО) действа втори властови център, „паралелна община“ от мрежа от съветници и консултанти на кмета“, които вземат важните решения. Още в началото на април той постави пет маркера, по които ще преценят дали да продължат да поддържат кмета: конкурса за главен архитект; ревизия на управлението на ГЕРБ; новите договори за почистване; бюджета на София за 2025 г.; новата структура на СО, която още не е приета, макар да беше обещана преди повече от година.
За управление с гръб са необходими 31 съветници от 61-членния СОС, каквито и преди ПП–ДБ–СС нямаха – затова и не държат икономическата власт в СО. ГЕРБ взеха ключовите пет от общо 14 комисии в СОС, сред които бюджетната, антикорупционната и тази по сигурността, докато ПП–ДБ получиха само две – за младежта и спорта и за международно сътрудничество и европейски проекти.
Който държи СОС, той управлява
ГЕРБ – партията, управлявалата София дълги години, си осигури монопол върху решенията на СОС още в началото на управлението на Терзиев, групирайки се заедно с БСП и формирайки гръбнака на „икономическото мнозинство“ (както го нарекоха ПП–ДБ): ГЕРБ–СДС, БСП, „Има такъв народ“ и отцепниците от „Възраждане“ (заедно с Карлос Контрера от ВМРО). Това обезсили кмета и реализирането на определени промени спрямо неговите виждания, но също се оказа удобно – бяха продължени и реализирани проекти, заложени от управлението на ГЕРБ, защото… ами няма как.
Васил Терзиев не се и опита да потърси тематични мнозинства, както правят в 51-вия парламент. Сега обаче ще му се наложи, ако иска да прокара и най-обикновено предложение. А предстоят съществени решения – бюджетът на столицата за 2025 г. с разходи, доближаващи 3 млрд. лв., тепърва ще влезе в СОС. Още по-значимо заради силните икономически интереси в него е сметосъбирането, за което са заложени над 1 млрд. лв. за следващите четири години (само за 2025 г. сумата надхвърля 302 млн. лв.).
Договорите с фирмите, чистили София години наред, изтичат (а значи и един от сигурните бизнеси на Румен Гайтански – Вълка). Екипът на Терзиев наскоро освети схема за източване на пари от събирането на боклук. Амбициите на СО са да избере нови фирми, но предвид загубата на подкрепа не е сигурно дали ще осъществи намерението си.
„Благодарение“ на мнозинството в СОС, вместо постепенно да бъде разграждан обраслият с корупционни зависимости предишен модел, той продължи безпроблемното си съществуване. Затова и критиките към СС и към нейния лидер Борис Бонев, че от напускането им печели ГЕРБ, изглеждат повече като политически послания.
През юли 2024 г. „икономическото мнозинство“ успя да наложи без конкурси свои избраници в управлението на шест ключови общински дружества в София: „Топлофикация София“, Центъра за градска мобилност, „Столичен автотранспорт“, „Столичен електротранспорт“, „Метрополитен“ и „Софинвест“. Тогава Стоян Братоев беше запазен като директор на „Метрополитен“ благодарение на политическа сделка – за да подкрепи Ваня Григорова (БСП) рокадите в общинските дружества. Борис Бонев обяви, че постигнатото е победа за „икономическото мнозинство“, но каза и още нещо:
Това е войната за преразпределяне на влиянието в общинските фирми между Орлин Алексиев (бивш общински съветник от ГЕРБ, 12 години шеф на бюджетната комисия в СОС, със славата на разпределител на обществени поръчки в СО – б.а.) и Красьо Черния (Красимир Георгиев, известен брокер в съдебната система със своето прословуто тефтерче – б.а.). Сега се наместват хората на втория.
Терзиев се опита да върне доклада за избора на ръководство на дружествата, но областната управа отмени изцяло акта му, обявявайки го за нищожен. Сега отново са вдигнали мерника на Братоев, а Терзиев се опитва да го спаси от отстраняване, в основата на което стои обществена поръчка за 8 метровлака за над 140 млн. лв. без ДДС, прекратена заради това, че имаше един участник.
Епилогът за софийското метро беше тази седмица, когато Съветът на директорите на „Метрополитен“ все пак отстрани Братоев, чиито заслуги при строителството на подземната железница са безспорни, но той остава като член на борда. Мотивите за свалянето му бяха „влошено здравословно състояние“. СС се опитаха да осуетят избора на нов директор, но неуспешно.
Изпълняват се проекти от Фандъкова
Новият столичен кмет така и не ревизира наследството на ГЕРБ и управлявалата няколко мандата Йорданка Фандъкова, макар да критикува централизирания модел, фаворизирането на определени фирми, както и липсата на прозрачност в управлението на София.
Нещо повече – като временен главен архитект Богдана Панайотова (вече избрана за титуляр на поста) продължи проблемни строителни проекти, наследени от ГЕРБ. Такава е бъдещата 6-етажна офис сграда с подземен гараж на две нива до ресторант „Синия лъв“. Нейният устройствен план и планът за застрояване са одобрени от арх. Панайотова на 5 декември 2024 г. Тя беше дала и разрешение за строеж на мястото на стара къща на ул. „Стара планина“ 9, в която е живял Кемал Ататюрк, докато е пребивавал в България. След обществен натиск разрешението беше отменено, но още не е сигурно дали къщата е спасена. Нова 60-метрова кула ще се вдигне при кръстовището на бул. „Филип Кутев“ и „Симеоновско шосе“ благодарение на издаденото разрешение за строеж. На път е да бъде разрешено още високо строителство.
Затова и чашата преля, когато за главен архитект на София беше избрана Панайотова, участвала в изготвянето на правилата за провеждане на самия конкурс. Дори ПП изрази загриженост от решението на Терзиев заради „досегашната ѝ професионална история, която не дава достатъчно основания за доверие“:
София има нужда от управление, което поставя публичния интерес над всичко. Ние ще продължим да настояваме именно за такъв подход.
За капак Борис Бонев съобщи по bTV, че като временно изпълняваща длъжността Панайотова се е срещала нерегламентирано с инвеститорите на 215-метровия небостъргач на бул. „Черни връх“, чието строителство е замразено от 7 години, и обвини ръководството на СО в нерегламентирани срещи с Пеевски и Христофор Аманатидис – Таки. Срещата на Панайотова е документирана със снимки, предадени на столичния кмет Васил Терзиев, който пък в коментар по темата обяви, че я е пратил на полиграф. Строежът на небостъргача до мол „Парадайс“ е уреден с решение на СОС през 2017 г., с което се прокарва това изключение от Общия устройствен план на София.
Тестът с полиграф не е убедително доказателство за честност и почтеност, особено в контекста на досегашните спорни решения на арх. Панайотова. Но за да бъдат предотвратени още репутационни щети, тя отказа да издаде разрешение за строежа на 215-метровия небостъргач, който щеше да е най-високата сграда в България. Според съобщение на СО експерти проверяват законосъобразно ли е било решението на СОС от 2017 г., с което се изменя устройственият план на мястото. Вероятно спорът ще се разреши по съдебен път.
Само преди месец столичният кмет заяви по БНТ, че „Столична община няма законови механизми да спре небостъргача“ и че строителството му е едва ли не предопределено. Сега се оказва, че някакви механизми все пак има.
Последиците
Трусът с напускането на СС ще се отрази и на местното управление в София, и на националното. Партията има силна гражданска база, особено сред младите, активни и критично мислещи избиратели. Тяхното отдръпване изпраща сигнал, че Терзиев (а и ПП–ДБ) не изпълнява собствените си обещания. Това ще рефлектира на следващи (парламентарни) избори, които ще се проведат преди местните през 2027 г. Но кой знае…
Васил Терзиев, който се намира в пресата между изпълнителната власт и „икономическото мнозинство“ в СОС, ще бъде ежедневно блокиран в работата си, докато ГЕРБ кресливо ще го обвиняват в застой.
Дошъл като символ на новото, на промяната за София, в средата на мандата си бившият предприемач е по-скоро безличен. Той избягва директните срещи – и с граждани, и с журналисти (телевизионните интервюта не се броят) – и трудно може да бъде наречен лидер, камо ли да продължи в голямата политика, както му предричаха. Кметският пост в столицата е добър трамплин – за Бойко Борисов се оказа даже катапулт, който го изстреля на премиерския пост.
Терзиев е непартиен технократ и бизнесмен, продал компанията, на която е съосновател, за над 262 млн. долара. Той и екипът му предпочитат да вземат сами решенията си, включително и за назначения. Но ако те са лоши и неефективни, загуби калкулира именно ПП–ДБ. За обединението този ефект е допълнителна щета наред с критиките, които още търпи заради сглобката, в която участваше и Делян Пеевски. Освен това лидерът на СС разясни в социалните мрежи, че е имало одобрен механизъм за назначения в СО преди изборите.
Имаше номинационна комисия с представители на партиите и кмета за избор на всички длъжности. Имаше предложения за всички позиции спрямо коалиционното споразумение, с които кметът не се съобрази.
„Решенията са мои – и добрите, и лошите – и до момента си заставам зад тях“, казва кметът на София. Ако беше чисто партийна кандидатура, политическата сила би могла да му повлияе за едно или за друго решение, както и за публичния му образ, но сега това е невъзможно.
Управлението на Васил Терзиев от възможност за еманципация на ПП–ДБ се превърна в бреме, което направи още по-прозрачна липсата на коалиционна спойка, лидерство и реална реформа. Ако София отиде на нови избори и Терзиев падне (предишната победа я спечели трудно, с преднина от 5000 гласа), той ще изгуби само поста си. Но ПП–ДБ рискуват много повече – не просто да загубят столицата, а и амбицията за алтернатива на национално ниво.
Four stable kernel updates
Security updates for Friday
Post Syndicated from corbet original https://lwn.net/Articles/1018912/
Security updates have been issued by AlmaLinux (thunderbird), Debian (libbpf), Fedora (golang-github-openprinting-ipp-usb, ImageMagick, mingw-libsoup, mingw-poppler, and pgbouncer), SUSE (glib2, govulncheck-vulndb, libsoup-2_4-1, libxml2-2, mozjs60, ruby2.5, and thunderbird), and Ubuntu (linux, linux-azure, linux-azure-5.4, linux-bluefield, linux-gcp, linux-hwe-5.4, linux-ibm, linux-kvm, linux-oracle, linux-oracle-5.4, linux-aws, linux-aws-5.4, linux-gcp-5.4, linux-iot, linux-aws-fips, linux-azure-fips, linux-fips, linux-gcp-fips, linux-hwe-6.8, linux-ibm-5.4, linux-oracle-5.15, openssh, and php-twig).
License Plates: A History
Post Syndicated from The History Guy: History Deserves to Be Remembered original https://www.youtube.com/watch?v=mwzlV5CZ_5U
Cryptocurrency Thefts Get Physical
Post Syndicated from Bruce Schneier original https://www.schneier.com/blog/archives/2025/04/cryptocurrency-thefts-get-physical.html
Long story of a $250 million cryptocurrency theft that, in a complicated chain events, resulted in a pretty brutal kidnapping.
Т.Е. от Е.Т. – епизод 12
Post Syndicated from Тоест original https://www.toest.bg/t-e-ot-e-t-epizod-12/

Всички сме във вица, в който един рибар постоянно хващал с въдицата си крави, които излизали от водата, невъзмутимо питали колко е часът, и необезпокоявани се отправяли в неизвестна посока, минавайки покрай рибаря, неговата зяпнала уста и кучето му. На третата крава кучето не издържало, казало на стопанина си: „Копеле, и аз не знам какво става…“ и си тръгнало и то. Та и ние така – или сме кравите, или сме кучето, но при всички положения сме за скенер.
Следете видеорубриката на Елена Телбис за „Тоест“ и в Instagram и TikTok.
A Terrible New Weapon
Post Syndicated from The History Guy: History Deserves to Be Remembered original https://www.youtube.com/watch?v=S97lTjnln-8
Introducing the SOP-driven LLM agent frameworks
Post Syndicated from Grab Tech original https://engineering.grab.com/introducing-the-sop-drive-llm-agent-framework
Introduction
We’re excited to introduce an innovative Large Language Model (LLM) agent framework that reimagines how enterprises can harness the power of AI to streamline operations and boost productivity. At its core, this framework leverages Standard Operating Procedures (SOPs) to guide AI-driven execution, ensuring reliability and consistency in complex processes. Initial evaluations have shown remarkable results, with over 99.8% accuracy in real-world use cases. For example, the framework has powered solutions like the Account Takeover Investigations (ATI) bot, which achieved a 0 false rate while reducing investigation time from 23 minutes to just 3, automating 87% of cases. The fraud investigation use case also reduced the average handling time (AHT) by 45%, saving over 300 man-hours monthly with a 0 false rate, demonstrating its potential to transform even the most intricate enterprise operations with a high degree of accuracy.
The framework’s capabilities extend far beyond just accuracy, it offers a versatile suite of tools that revolutionise automation and app development, enabling AI-powered solutions up to 10 times faster than traditional methods.
The power of SOPs in AI automation
Traditional agent-based applications often use LLMs as the core controller to navigate through standard operating procedure (SOPs). However, this approach faces several challenges. LLMs may make incorrect decisions or invent non-existent steps due to hallucination. As generative models, they struggle to consistently produce results in a fixed format. Moreover, navigating complex SOPs with multiple branching pathways is particularly challenging for LLMs. These issues can lead to inefficiencies and inaccuracies in implementing business operations, especially when dealing with intricate, multi-step procedures.
Our framework addresses these challenges head-on by leveraging the structure and reliability of SOPs. We represent SOPs as a tree, with nodes encapsulating individual actions or decision points. This structure supports both sequential and conditional branching operations, mirroring the hierarchical nature of real-world business processes.
To make this powerful tool accessible to all, we’ve developed an intuitive SOP editor that allows non-technical users to easily define and visualise complex workflows. These visual representations are then converted into a structured, indented format that our system can interpret and execute efficiently.

The example above demonstrates how our framework transforms the customer support process by mirroring manual workflows while leveraging advanced automation. The SOP is written in natural language using an indentation format, making it easy for users to define and understand. The @function_name (@get_order_detail) notation clearly identifies where external calls are made within the process, highlighting the integration points between the SOP-driven LLM agent framework and existing systems or databases.
The magic behind the scenes
The framework’s strength lies in the synergy between three key components: the planner module, LLM-powered worker agent, and user agent. This intelligent trio works in harmony to deliver a seamless, efficient, and adaptable automation experience.
The planner module employs a Depth-First Search (DFS) algorithm to navigate the SOP tree, ensuring thorough execution with step-by-step prompt generation and sophisticated backtracking mechanisms. The LLM-powered worker agent dynamically updates its understanding and makes decisions based on the most current information. Our approach tackles hallucination and improves efficiency through context compression and strategic limitation of available Application Programming Interface tools (APIs). The framework’s dynamic branching capability allows for adaptive navigation based on real-time data and analysis.
Serving as the primary user interface, the user agent offers multilingual interaction, accurate intent identification, and seamless handling of out-of-order scenarios.
By combining structured SOPs with flexible LLM-powered agents and advanced algorithmic approaches, our framework adeptly handles complex, real-world scenarios while maintaining reliability and consistency. This innovative architecture effectively mitigates common LLM challenges, resulting in a robust system capable of navigating intricate business processes with high accuracy and adaptability.
Beyond SOPs: A suite of powerful features
While SOPs form the backbone of our framework, we’ve incorporated several other cutting-edge features to create a truly comprehensive solution. Our Graph Retrieval-Augmented Generation (GRAG) pipeline enhances information retrieval and content generation tasks, allowing for more accurate and context-aware responses. The workflow feature enables chaining multiple plugins together to handle complex processes effortlessly, improving efficiency across various departments.
Our plugin system seamlessly integrates with various technologies such as API, Python, and SQL, providing the flexibility to meet diverse needs. Whether you’re an engineer coding in Python, a data analyst working with SQL, or a risk operations specialist, our plugin system adapts to your preferred tools. Additionally, our playground feature allows users to develop, test, and refine LLM applications easily in an interactive environment, supporting the latest multi-modal APIs for accelerated innovation.

Empowering teams through versatility and accessibility
Our framework is designed to empower teams across the organisation. The multilingual capabilities of our user agent ensure that language barriers don’t hinder adoption or efficiency. For scenarios requiring human intervention, we’ve implemented a state stack that allows for pausing and resuming execution seamlessly. This feature ensures that complex processes can be handled with the right balance of automation and human oversight.
Security and transparency at the forefront
In an era where data security and process transparency are paramount, our framework doesn’t fall short. It’s designed with a security-first approach, ensuring granular access control so that users only access information they’re authorised to see. Additionally, we provide detailed logging and visualisation of each execution, offering complete explainability of the automation process. This level of transparency not only aids in troubleshooting but also helps in building trust in the AI-driven processes across the organisation.
Looking ahead
As we continue to refine and expand this LLM agent framework, we’re excited to explore its potential across different industries. We’ll be sharing more about each of these features in the future and showcase how they can be leveraged to solve specific business challenges and explore real-world applications.
Look forward to more in-depth explorations of the framework’s capabilities, use cases, and technical innovations. With this revolutionary approach, you’re not just automating tasks – you’re transforming the way your enterprise operates, unleashing the true power of LLM in your organisation.
Join us
Grab is a leading superapp in Southeast Asia, operating across the deliveries, mobility and digital financial services sectors. Serving over 800 cities in eight Southeast Asian countries, Grab enables millions of people everyday to order food or groceries, send packages, hail a ride or taxi, pay for online purchases or access services such as lending and insurance, all through a single app. Grab was founded in 2012 with the mission to drive Southeast Asia forward by creating economic empowerment for everyone. Grab strives to serve a triple bottom line – we aim to simultaneously deliver financial performance for our shareholders and have a positive social impact, which includes economic empowerment for millions of people in the region, while mitigating our environmental footprint.
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!
Comic for 2025.04.25 – Robot
Post Syndicated from Explosm.net original https://explosm.net/comics/robot
New Cyanide and Happiness Comic