<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>AngelForce Blog</title>
<link>https://angelforce.eu/blog/</link>
<atom:link href="https://angelforce.eu/blog/feed.xml" rel="self" type="application/rss+xml"/>
<description>Practical cyber security articles from AngelForce: email security, web security, vulnerabilities, incident response, compliance and secure development.</description>
<language>en</language>
<item>
<title>A practical WordPress security checklist</title>
<link>https://angelforce.eu/blog/wordpress-security-checklist/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/wordpress-security-checklist/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>Twelve WordPress hardening steps in a sensible order, from updates and abandoned plugins to 2FA, XML-RPC, backups, file integrity and a WAF.</description>
<category>WordPress</category><category>Web security</category>
</item>
<item>
<title>Run a two-hour incident response tabletop this week</title>
<link>https://angelforce.eu/blog/two-hour-incident-response-tabletop/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/two-hour-incident-response-tabletop/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>Run a two-hour ransomware or account-takeover tabletop with a small team, log the gaps, and turn them into a short runbook with named owners.</description>
<category>Incident response</category><category>Ransomware</category>
</item>
<item>
<title>Security headers that matter, and the ones to retire</title>
<link>https://angelforce.eu/blog/security-headers-that-matter/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/security-headers-that-matter/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>A practical guide to CSP with nonces, HSTS and preload, frame-ancestors, Referrer-Policy, Permissions-Policy and COOP, with examples and what to drop.</description>
<category>Web security</category><category>Secure development</category>
</item>
<item>
<title>Before you connect company data to an AI assistant</title>
<link>https://angelforce.eu/blog/security-checklist-before-connecting-data-to-ai-assistant/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/security-checklist-before-connecting-data-to-ai-assistant/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>A checklist for IT teams: data classification, hostile input, access control, logging, vendor review and ownership before connecting an LLM.</description>
<category>Secure development</category><category>Compliance</category>
</item>
<item>
<title>How to design and test secure file uploads</title>
<link>https://angelforce.eu/blog/secure-file-uploads-design-and-testing/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/secure-file-uploads-design-and-testing/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>A checklist of controls for file upload features, based on the OWASP cheat sheet, with a table of tests to run against each upload endpoint.</description>
<category>Web security</category><category>Secure development</category>
</item>
<item>
<title>Passwords and passkeys - what NIST SP 800-63B-4 recommends</title>
<link>https://angelforce.eu/blog/passwords-and-passkeys-what-nist-recommends/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/passwords-and-passkeys-what-nist-recommends/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>NIST's current password rules explained - 15-character minimums, no forced rotation, breached-password checks - plus MFA strength and where passkeys fit.</description>
<category>Identity and access</category>
</item>
<item>
<title>NIS2 Article 21 in practice for medium-sized organisations</title>
<link>https://angelforce.eu/blog/nis2-article-21-in-practice/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/nis2-article-21-in-practice/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>The ten NIS2 risk-management measures in Article 21 in practical terms, plus the Article 23 reporting deadlines of 24 hours, 72 hours and one month.</description>
<category>Compliance</category>
</item>
<item>
<title>JWT security pitfalls and how to avoid them</title>
<link>https://angelforce.eu/blog/jwt-security-pitfalls/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/jwt-security-pitfalls/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>Common JWT mistakes - alg none, RS256 and HS256 confusion, weak HMAC secrets, missing claim checks, kid injection, revocation and storage - and the fixes.</description>
<category>Secure development</category><category>Identity and access</category>
</item>
<item>
<title>How to spot a phishing link before you click</title>
<link>https://angelforce.eu/blog/how-to-spot-a-phishing-link/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/how-to-spot-a-phishing-link/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>Learn to read a URL like an attacker builds it - registrable domains, lookalike and punycode domains, the @ trick, open redirects, shorteners and new TLDs.</description>
<category>Phishing</category>
</item>
<item>
<title>How to read a penetration test report</title>
<link>https://angelforce.eu/blog/how-to-read-a-penetration-test-report/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/how-to-read-a-penetration-test-report/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>What a good penetration test report contains, how findings are rated, what to fix first, and how to tell a real test from a rebadged scan.</description>
<category>Penetration testing</category>
</item>
<item>
<title>A one-week GitHub Actions hardening plan for dev teams</title>
<link>https://angelforce.eu/blog/github-actions-hardening-plan-one-week/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/github-actions-hardening-plan-one-week/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>Five daily tasks for GitHub Actions: token permissions, action audits, script injection, secrets handling and workflow ownership.</description>
<category>Secure development</category>
</item>
<item>
<title>The first 24 hours of a ransomware incident</title>
<link>https://angelforce.eu/blog/first-24-hours-of-a-ransomware-incident/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/first-24-hours-of-a-ransomware-incident/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>Day one of a ransomware attack - containing it without losing evidence, credential resets, backup checks, GDPR and NIS2 deadlines, and whether to pay.</description>
<category>Incident response</category><category>Ransomware</category>
</item>
<item>
<title>EUDI Wallet logins: what to check before you accept them</title>
<link>https://angelforce.eu/blog/eudi-wallet-login-security-questions/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/eudi-wallet-login-security-questions/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>Questions for municipalities and service providers on assertions, attributes and signing flows before they accept EUDI Wallet logins.</description>
<category>Identity and access</category><category>Compliance</category>
</item>
<item>
<title>SPF, DKIM and DMARC explained - a safe path to p=reject</title>
<link>https://angelforce.eu/blog/email-authentication-spf-dkim-dmarc/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/email-authentication-spf-dkim-dmarc/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>How SPF, DKIM and DMARC stop others sending email as your domain, how to move from p=none to p=reject safely, and the mistakes that break mail.</description>
<category>Email security</category><category>Phishing</category>
</item>
<item>
<title>Cyber Resilience Act: a 2026 plan for product makers</title>
<link>https://angelforce.eu/blog/cyber-resilience-act-2026-preparation-plan/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/cyber-resilience-act-2026-preparation-plan/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>What software and hardware teams should set up before CRA obligations apply: development evidence, vulnerability handling, updates and documentation.</description>
<category>Compliance</category><category>Secure development</category>
</item>
<item>
<title>CVSS, EPSS and KEV - how to prioritise vulnerabilities</title>
<link>https://angelforce.eu/blog/cvss-epss-kev-prioritising-vulnerabilities/</link>
<guid isPermaLink="true">https://angelforce.eu/blog/cvss-epss-kev-prioritising-vulnerabilities/</guid>
<pubDate>Fri, 16 Oct 2026 08:00:00 GMT</pubDate>
<description>Why a CVSS base score alone is a weak priority signal, how EPSS and the CISA KEV catalogue add threat context, and a simple order for patching.</description>
<category>Vulnerabilities</category>
</item>
</channel>
</rss>
