Prompt injection: how to protect chatbots and AI agents (OWASP Top 10 for LLMs)
What prompt injection is, why it tops the OWASP Top 10 for LLM Applications and which defences actually work for chatbots and AI agents.
5 min read
Penetration testing guide: how it differs from a vulnerability assessment, types, phases, what the report must contain, how often to test and how to prepare.
A penetration test (or pentest) is a simulated, authorised cyberattack on an application, an API, a mobile app or a network, carried out by specialists to find out which vulnerabilities an attacker could really exploit, and with what consequences. It ends with a report setting out the weaknesses found, how serious they are and how to fix them, followed by a retest to verify the fixes.
Attacks are on the rise, and Italy is among the hardest-hit countries. According to the Clusit Report 2026 (Clusit is the Italian Association for Information Security), known serious incidents in 2025 numbered 5,265 worldwide (up 49% on the previous year) and 507 in Italy (up 42%): roughly one in ten involved Italy. A penetration test does not make a system invulnerable, but it means weaknesses are found before the attacker finds them, when fixing them costs less.
| Vulnerability assessment | Penetration test | |
|---|---|---|
| Goal | Find and rank known vulnerabilities | Show what can actually be achieved |
| Method | Largely automated, with manual verification | Mainly manual, led by a tester |
| Depth | Broad, across the whole scope | Deep, on the most relevant attack paths |
| Output | Prioritised list of vulnerabilities | Proof of exploitation, real impact, attack chains |
| When | Often, even continuously | Before major releases and periodically |
It often makes sense to start with a vulnerability assessment to get a broad picture, then go deeper with a penetration test on the most exposed or most critical systems.
By how much the tester knows:
By target:
Public, recognised guides serve as the methodological reference: the OWASP Web Security Testing Guide for web applications, the OWASP MASVS and MASTG standards for mobile apps, and NIST SP 800-115 for the overall approach to testing.
A report that simply lists a scanner’s output is not a penetration test.
In our work, security starts with the code: in the systems we develop we use, for example, separate credentials for each device and signed firmware, as in the box that prints kitchen tickets. If you want to know how exposed one of your systems is, write to us: we agree on the scope and rules together before we start.
A well-run test is planned to avoid that: scope, time windows and excluded techniques are agreed in advance, work is done on a test environment whenever possible, and activities stop immediately if something behaves unexpectedly. The risk is never zero, which is why you need a contact person who can be reached during the test.
It depends on the scope. A single web application of medium complexity generally takes a few days of testing, plus time to write the report and to retest after the fixes. Networks and applications with many roles take longer.
No. Scanners find many known vulnerabilities and are useful in a vulnerability assessment, but they don't understand the application's logic: they won't discover, for example, that a user can see someone else's data by changing a number in the URL. That is why you need the manual work of a tester.
What prompt injection is, why it tops the OWASP Top 10 for LLM Applications and which defences actually work for chatbots and AI agents.
5 min read
Practical rules for using generative AI at work: which accounts to choose, what not to paste into prompts, a simple internal policy, GDPR and shadow AI.
4 min read
What an AI agent is, how it differs from a chatbot, which SMB processes it can handle and how to introduce it with permissions, controls and costs in check.
6 min read