{"id":1884,"date":"2022-09-16T08:30:00","date_gmt":"2022-09-16T08:30:00","guid":{"rendered":"https:\/\/apimike.com\/?p=1884"},"modified":"2022-12-12T21:58:18","modified_gmt":"2022-12-12T21:58:18","slug":"owasp-api-security-top-10","status":"publish","type":"post","link":"https:\/\/apimike.com\/owasp-api-security-top-10","title":{"rendered":"OWASP API Security Top 10 – a Fresh Look"},"content":{"rendered":"\n

With continuous growth and expansion in technology. Software development teams are applying modern practices in building software. This has led to applications built on the cloud using a microservices architecture.<\/p>\n\n\n\n

While this architecture is a great tool to build applications, they have a small-sized nature and are not coupled much. Developers use application programming interfaces (APIs) to integrate the applications.<\/p>\n\n\n\n

APIs are efficient in connecting software components and have many benefits. But, these APIs have become targets of malicious attacks on applications.<\/p>\n\n\n\n

In this article, we are going to look at OWASP, and OWASP API Top 10 List and explain each one of them with examples of abuse on each of them.<\/p>\n\n\n\n

\n
\n

What Is OWASP<\/h2>\n<\/div>\n\n\n\n
\n
\"\"<\/figure><\/div><\/div>\n<\/div>\n\n\n\n

The word OWASP<\/strong> is an acronym which means Open Web Application Security Project<\/strong>.
OWASP is a worldwide community responsible for web application protection. This organization is a non-profit that provides free resources on how to improve software security.<\/p>\n\n\n\n

<\/a>What Is OWASP API Security Top 10<\/h2>\n\n\n\n

The OWASP API Security Top 10 is a document that the OWASP community updates with up-to-date attacks on APIs and workable solutions.<\/p>\n\n\n\n

Developers build most modern applications with microservices architecture.<\/p>\n\n\n\n

The microservices are loosely coupled so they integrate them with APIs. These APIs developers use to run these applications are in charge of data.<\/p>\n\n\n\n

Attackers would attack these APIs because of their vulnerability and have access to the full system.<\/p>\n\n\n\n

That was how OWASP API Security Top 10 came to be. The document highlights the top ten vulnerabilities that could breach the security of a program.<\/p>\n\n\n\n

<\/a>OWASP API Security Risks<\/h2>\n\n\n\n

This list was last updated on 2019, the top ten OWASP API security risks include:<\/p>\n\n\n\n

<\/a>1. Broken Object Level Authorization<\/h3>\n\n\n\n

APIs use object-level authorization to authorize legitimate users.<\/p>\n\n\n\n

When we leave the API endpoint exposed and unsecured, an attacker can gain access to it by changing the Ids.<\/p>\n\n\n\n

For example, when a consumer makes a request containing a userid<\/code> to an API, like;<\/p>\n\n\n\n

https://docs.com\/document?userID=12\n<\/code><\/pre>\n\n\n\n

If the object level authorization is broken or not implemented. An attacker could gain unauthorized access by changing the userId to something like:<\/p>\n\n\n\n

https://docs.com\/document?userID=13\n<\/code><\/pre>\n\n\n\n

If the new userid<\/code> above guessed by the attacker is in the program.<\/p>\n\n\n\n

The attacker will gain unauthorized access to the consumers\u2019 data without undergoing authorization. Or the attacker will guess another number that will be in use in the program.<\/p>\n\n\n\n

<\/a>2. Broken User Authentication<\/h3>\n\n\n\n

There are so many authentication processes done in an application like resetting passwords, login authentication and so on.<\/p>\n\n\n\n

We do these normally using APIs. If developers fail to design these API endpoints differently from other API endpoints. Or they fail to implement the authentication correctly.<\/p>\n\n\n\n

Then, malicious agents can access the accounts of legitimate users in the application.<\/p>\n\n\n\n

Some examples where broken user authentication can occur include:<\/p>\n\n\n\n