This is the second article in a 2-part blog series. In the previous article, we talked about the major changes in application development in the last several years. In this article, we will discuss how these changes impact application security as we used to know it, and redefined the boundaries.
With traditional applications, it was common to see companies invest most of their security efforts on the “edge” - the first layer exposed to the internet. Today, it’s not really possible to do this, because of two main reasons:
Microservice Level Protection: Microservice and API architectures expose more pieces of business logic to the client. It’s easy to use them for positive purposes as a developer or to take advantage of them as an attacker. Code components that used to be concealed in monolithic architectures, are today standing uncovered and easy to understand, just waiting to be explored by attackers.
The Isolation Challenge: It is more challenging to isolate sensitive components, such as admin panels, internal tools, and even complete environments from external access. Engineers working remotely and non-production environments integrating with with CI/CD tools both lead to a situation where companies usually leave these sensitive environments exposed to everyone.
Clients become more sophisticated with heavier functionality. Client security is no longer a small area of Application Security that contains a few issues like CSRF and XSS. It’s a whole new field, and each one of your clients requires different security approaches. Protecting a web application is a different story than protecting an iOS app or an IoT device.
Historically and statistically, breaches on the backend are more critical and expose the organization to a larger risk than client-side breaches. The Famous Facebook Breach, Uber Account Take Over, and Equifax breach all happened because of backend Application Security issues (more specifically, API security).
The backend handles information about all the users + internal data, while each client handles information about one to a few users. Since the backend is driven by APIs, API Security simply means modern backend application security.
Over the last years, many traditional Application Security issues that you’re probably familiar with became less and less prevalent.
It didn’t happen in one day, but instead was a gradual and developing change driven by a set of security-oriented technologies and better developer training. Let’s take a look at a few examples:
On top of that, traffic today is more structured and predictable thanks to the REST standard. Modern security companies leverage this fact and build more sophisticated and self-adaptive products.
There are a set of concepts in modern applications that make APIs a very attractive target for attackers.
After we understand the unique aspects of API security, it’s time to jump into the OWASP Top 10 for APIs.
A lot of good people have invested resources and time in this project. We published the first RC last year, and made changes based on feedback we’ve been gathering from the community. Now it’s ready to be used.
Recommended reads.
Part I: What are Modern Applications
Part I: What are Modern Applications
An introduction to anomaly detection in the context of distributed tracing.
An introduction to anomaly detection in the context of distributed tracing.