Sebastian Leuer

Programming secure C#/.NET Applications: Dos & Don'ts

A user resets their password with an email containing a Kelvin symbol instead of a 'K'. This simple trick bypasses your security. Here's how to stop it.

Programming secure C#/.NET Applications: Dos & Don'ts
#1about 5 minutes

AI-generated code can introduce security risks

AI tools can generate insecure code by using deprecated APIs, introducing biases like modulo bias, or having incomplete logic, requiring a manual security review.

#2about 11 minutes

Handling character encoding to prevent spoofing attacks

Visually similar Unicode characters can be used to spoof identities in attacks, which can be mitigated by using ordinal string comparison instead of culture-invariant comparison.

#3about 12 minutes

Mitigating SQL, command, and path traversal injections

Untrusted user input can lead to various injection attacks, which are prevented by using parameterized SQL queries, the ArgumentList property for processes, and robust path validation.

#4about 4 minutes

Avoiding deserialization vulnerabilities in JSON and XML

Insecure default settings in parsers, like TypeNameHandling in Newtonsoft.Json or DTD processing in XML readers, can lead to remote code execution vulnerabilities.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

From learning to earning

Jobs that call for the skills explored in this talk.