Advanced web security topics
blog.georgovassilis.com
blog.georgovassilis.com
If you like this kind of web security focused articles, our security researchers publish (almost weekly) very basic to advanced web security topics in our blog : https://www.netsparker.com/blog/web-security/ Some of them are very specific like;
PHP Type Juggling Vulnerabilities: https://www.netsparker.com/blog/web-security/php-type-juggli...
and some of them are 101 kind of coverage such as HTTP Response Splitting: https://www.netsparker.com/blog/web-security/crlf-http-heade...
My rationale is that a list of attacks and issues like this requires you to reason backwards from attacks to what a safe approach would be. This is incredibly hard work that most people are not ready to do.
Instead, what you need is for someone to present a set of up to date best practices that you can implement. Here’s one stab at one for the specific topic of file uploads: https://twitter.com/olemoudi/status/1023976897661870083 (not vouching for this particular list per se—I don’t know if it’s missing things, but it seems like it’s on the right track).
Thanks!
This exploit is not practical in Firefox. Attempting to read cssRules on an external stylesheet will throw a "SecurityError: The operation is insecure".
Chrome mitigates this via Cross-Origin Read Blocking.
> Phishing with target=_blank links
For defense in depth, you'll probably want to use CSP's disown-opener to fix this globally (rather than trying to make sure all <a> elements are covered) IMO.
Possibly the best advice a new web developer can get. Once you realize what kinds of things can happen with unvalidated user input, it really changes your outlook!
Except no browser supports it yet (see table at https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP)
This vulnerability irritates me. Does the server not even know what resources it owns? Is this practice something that is due to dynamically typed langs/practices?
It feels like the problems that plagued SQL inection before we decided to use parameterized queries