The way I see it, both the identity and policy aspects of ZeroTrust require/can do with a solid "shift left" approach of being able to incorporate identity and policy checks in the build/deployment flows. 3/
@OpenPolicyAgent@osoHQ This can be extended across the stack, think... @kubernetesio authZ and policy testing with native tools, @kyverno, etc perhaps triggered as @argoproj workflows
Cloud IAM tests for things like SCPs, Permission boundaries ( @awscloud ) and similar for other cloud providers
5/
#SSRF is a super popular vulnerability that is leveraged extensively, by bad actors. Let's look at SSRF defense in this 𧡠1/
Let's start with the basics. SSRF happens because your app makes requests to other URLs based on user-generated data. If your app doesnt need to redirect/request random URLs (functionality), ensure that you have a tight allowlist. Only redirect to URLs in the allowlist 2/
But if your app needs to redirect to a larger (purely user-defined) set of URLs, then things may get a little more complex. Now you need to validate inputs like a mf'er. Parse and Break down URLs by scheme, domain, etc. Validate each one as required 3/
Realized that there's a huge gap in knowledge for some taxonomy and terms in #infosec. Here's a π§΅
Let's start with CWE from @CweCapec. Common Weakness Enumeration.
* This is π« a scoring system
* This is identifier for a type of vuln
For example: SQL Injection is CWE 89
It has broad "parent" and more specific "child" categories. But EOD, they are Vulnerability IDs 2/
@CweCapec Let's look the one its most confused with. CVE (@CVEnew). This is a number that is assigned to a specific vulnerability identified against software/hardware that is publicly available (commerical/OSS). Ex: CVE-2022-0847 is a CVE given to the Linux #DirtyPipe vul. 3/
ICYMI, this is how the #log4j#Log4Shell flaw works (in simple english), a 𧡠1. Victim is running a Java Web that uses the log4j logging lib 2. The victim web app has code that logs http request payloads/headers with log statements (example User-Agent)
1/
3. Attacker identifies vulnerable app and makes a request to the server with the User-Agent Value set to this. What does this mean? 2/
jndi == Java Naming and Directory Interface. Allows Java apps to access multiple apis for LDAP, Remote Method Invocation (RMI), etc through the JNDI Interface 4. The attacker tries to get the log4j library to lookup an LDAP server through JNDI 3/