Cloud API Security
Cloud API Security
Master Thesis
Charity Uche Orji
20210771
Aalborg University
Electronics and IT
Electronics and IT
Aalborg University
http://www.aau.dk
Title: Abstract:
Cloud API Security Audit
The migration of computing ser-
Theme: vices to the cloud and the use of
Master Thesis APIs to communicate and inter-
act with several applications over
Project Period: the internet come with its chal-
Fall Semester 2023 lenges. As these challenges in-
crease by the day, it is very im-
Project Group: portant that attention is paid to
Charity Uche Orji auditing the use of APIs, espe-
cially in enterprises. This project
Participant(s):
presents an extensive approach to
Charity Uche Orji
assessing RESTful APIs. It com-
Supervisor(s): mences by touching on why this is
Marios Anagnostopoulos essential, discussing vulnerabilities
to APIs, and outlining security re-
Copies: 1 quirements for APIs. A review of
current API security audit frame-
Page Numbers: 54 works and approaches to auditing
is highlighted. Next, an extensive
Date of Completion: approach to assessing Cloud APIs
June 2, 2023 is proposed using the presented se-
curity requirements as metrics. Fi-
nally, the results of an assessment
of a Public API are discussed.
The content of this report is freely available, but publication (with reference) may only be pursued
due to agreement with the author.
Contents
1 Introduction 1
2 Methodology 3
3.3.2 SOAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3.3 GraphQL . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
ii
Contents iii
4 API Assessment 22
5.1 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Bibliography 47
A Appendix 52
Chapter 1
Introduction
The vulnerabilities and data breaches now experienced in the use of APIs
make consideration of API security very crucial. If an API is not secure,
it affects the confidentiality and integrity of data hosted in its system and
transmitted through its endpoint. It can also affect the availability of a ser-
1
1.1. Problem Formulation 2
vice to those using it. This research work, thus focuses on answering the
question:
How can we better enhance the Security of Cloud APIs in use?
What practical measures are to be taken to ensure the confidentiality, in-
tegrity, availability, and appropriate authentication of API and API end-
points? To better approach this subject, we will consider the following
research questions:
This report is divided into chapters and sections to address these research
questions. The methods used for this project and the reason for the choices
are discussed in Chapter 2. The first and second research questions: what are
the security vulnerabilities common to APIs? and What are the essential security
requirements for APIs are answered in Chapter 3. Chapter 3 discusses some
background information on APIs, such as API vulnerabilities, breaches, and
security requirements. Related works on API security and different ap-
proaches to auditing are also presented in Chapter 3. The third research
question: How best can cloud APIs be assessed/audited? is discussed exten-
sively in chapter 4. The final chapter discusses and provides a summary
of the work done, the limitations of the project, answers to the research
questions, and suggestions on further areas of research on this subject.
Chapter 2
Methodology
This chapter discusses the approach and methods taken for this project.
We take a closer look at methods used for gathering data, analyzing data,
and the reason behind such choices. For clarity, the chapter is divided into
sections covering: data collection, data analysis, choice of APIs used, and
API assessment.
The data collection phase was focused on gathering relevant, published aca-
demic research work on subject matters such as APIs, API vulnerability, se-
curity, and auditing. Popular search engines were used, the likes of Google
Scholar, IEEE Xplore, Aalborg University Library, and Semantic Scholar. To
get suitable research papers, certain keywords were applied to the search.
The keywords used were: Cloud APIs auditing, API auditing. This did not
produce much result. One reason for this is that it is a relatively new field
with very few published research works. As a result, the majority of the
results from this search were irrelevant. 18 research publications were ob-
tained from the search but only 4 were relevant.
However, the search for related academic work was broadened. More key-
words were applied such as: API testing, API vulnerabilities, API security,
Information systems auditing, API security testing, API audit framework.
The choice of API testing tools and platforms used for this project were
products of quantitative data analysis. The data collection process revealed
a lot of API testing tools available in the market. From this list of API testing
tools, 4 open-source tools were chosen randomly. An online poll was made
in a forum on LinkedIn to seek the views of professionals in the Industry
3
2.3. Choice of APIs Used 4
who make use of or have made use of these API testing tools. The aim of
this poll was to find out the most commonly used API testing tools.
The 2 API testing tools with the highest votes as seen in Figure 2.1 were
used for this project. However, it was observed that there were limitations
on what can be achieved with one of the source tools: APISec. This led to
the use of an alternative software testing tool called Synk [24].
The APIs used for these projects are all Public APIs. YouTube Data API [14]
and Simple Inventory API [31] are some of the APIs evaluated in this
project. The reason for this choice is the difficulty to get organizations
who would be willing to collaborate on auditing and assessing their APIs.
Due to security reasons, many would be unwilling, to avoid any chance of
exposure of data used by these APIs which may be sensitive in nature.
2.4. API Assessment/Auditing 5
The various services provided and accessed in the cloud are dependent on
different service models. What a user is able to do, and how much control
he has differs with each service model. The 3 main cloud computing service
models are:
6
3.2. Types of APIs 7
Infrastructure as a Service(IaaS).
With this service model, a consumer is able to use cloud infrastructure(software
and hardware) hosted by a cloud provider [33]. These could be servers,
storage, and networking. The consumer only controls and manages com-
ponents such as operating systems, deployed applications, and data.
Platform as a Service(PaaS)
These cloud computing services allow a consumer to develop, run and man-
age applications in the cloud [13]. The consumer only has control over his
deployed applications.
Software as a Service(SaaS)
Software as a Service allows users to make use of cloud-based software so-
lutions/ applications over the internet. Some examples of SaaS solutions
include Gmail, Microsoft Office 365, Google Workspace, Adobe, etc. These
applications can be accessed using a web browser or a program interface
such as an Application Programming Interface(API) [33].
Cloud APIs enable communication and interaction with other applications
and services, such as other SaaS products. With them, one is also able to
access/ retrieve data from applications deployed in the cloud.
1. Open APIs
2. Public APIs
3. Partner APIs
4. Private APIs
5. Composite APIs
Open APIs
Open APIs are free and public APIs, with Open API specifications. They
generally do not need the authorization to be accessed [5].
Public APIs
Public APIs are in some way similar to Open APIs [5]. They are publicly
available for use to developers, but most do not have an Open-API specifi-
cation. Some may also require a subscription to fully utilize the APIs [5, 16].
They are usually built with little security(authorization and authentication)
measures [16]. The Google APIs are an example of Public APIs.
3.3. API Architecture 8
Partner APIs
These APIs are only accessible to certain parties, usually authorized clients
with licenses who are partners with the API developers [5, 16]. Due to their
limited access and nature, partner APIs have more built-in security mea-
sures than public APIs.
Private APIs
Private APIs are also known as Internal APIs. They are only accessible and
designed for use in an organization. Thus, they are not available to external
or third parties [16].
Composite APIs
A Composite API has multiple APIs embodied in it, such that multiple re-
quests can be made even from multiple servers, with a single API call [5].
These APIs are efficient, as they reduce the server load and system com-
plexity [16].
• REST
• SOAP
• GraphQL
REST stands for Representational State Transfer [5]. REST APIs allow com-
munication with web services over the HTTP protocol. All requests are
made using HTTP methods. The methods commonly used are POST, GET,
PUT, PATCH, and DELETE. These methods are used to create, read, up-
date, modify, and delete resources respectively [17].
To access a web service or resource in the cloud using APIs, a request is
made in the form of a web URL using any of the HTTP methods above [17].
In turn, a response is sent back by the server in HTML, XML, Image, or
JSON. The most commonly used response is in JSON format [17].
3.4. API Security 9
3.3.2 SOAP
SOAP stands for Simple Object Access Protocol. SOAP APIs are more struc-
tured than REST APIs. It encodes data sent and received over the API client
in XML [50]. SOAP APIs use HTTP as a primary protocol for transport.
However, it is language-independent and can use HTML, plain text, and
JSON as data formats. It also makes use of other protocols such as SMTP,
TCP, and UDP to transport messages [50]. Due to its structure, SOAP APIs
are not as flexible and lightweight as REST APIs.
3.3.3 GraphQL
A report published in 2019 showed that APIs constitute about 83% of to-
day’s internet traffic [1]. As more enterprises adopt the use of APIs in their
organizations, their percentage is sure to increase. Different types of APIs
are used in different ways and for different purposes by organizations to-
day. APIs no matter the type or purpose, could be vulnerable to certain
security risks. OWASP in 2019 published a list of the top 10 vulnerabilities
common to APIs [48].
The OWASP Top 10 for APIs are threats and vulnerabilities most exploited
and common to APIs. For 2023, its API Security Top 10 release candidate
on GitHub has a list of top threats to API. They are as follows in order of
priority:
2. Broken Authentication
7. Security misconfiguration.
Broken Authentication
The absence of user authentication or improper implementation of it on
API endpoints and API management tools makes it vulnerable to malicious
actors. An API is vulnerable to broken authentication if it allows the use of
weak passwords, sends sensitive details such as tokens and passwords in its
URL, or uses weak encryption keys. This vulnerability can be exploited to
gain access to users’ accounts in a system, reading their data and probably
using the data obtained for something malicious [48, 39].
Security misconfiguration
This entails the use of unpatched and out-of-date system components, lack
of Transport Layer Security(TLS), enabling features that are not necessary,
and lack of Cross-Origin Resource Sharing (CORS) policy on APIs. These
can lead to the exposure of sensitive data and possibly full system compro-
mise [43].
There are so many APIs and different API management platforms as well.
As a result, security functions are implemented in different ways in these
tools. This requires a proper study and understanding of these tools to
properly affect these functions. Vulnerabilities in API are not limited to the
OWASP TOP 10. APIs are written programs and codes of instructions. This
means that certain code vulnerabilities would also be applicable to APIs.For
3.4. API Security 12
A good number of Cloud API data breaches exploiting some of the API
vulnerabilities mentioned earlier were experienced in the year 2022.
The Broken Object Level Authorization(BOLA) vulnerability was quite preva-
lent in 2022. In January 2022 for example, Twitter, a social media platform
was made aware of a Broken Object level authorization vulnerability in its
system. This enabled the disclosure of certain details of a Twitter account
by an API if an email address or phone number associated with that ac-
count is entered by an individual [55]. About 5.4 million Twitter accounts
were exposed in July 2022 and reportedly offered for sale as a result of this
bug in their code [55, 27]. Another case of a data breach experienced as
a result of the BOLA vulnerability was that of Flexbooker. Flexbooker of-
fers digital appointment scheduling services. It uses an Amazon S3 bucket
for cloud storage. It experienced a DDoS attack on its AWS server, which
attackers exploited to gain unauthorized access to sensitive information of
over 3.7 million of its customers [57]. The Texas Department of Insurance,
on the other hand, had some security issues with its web application that
handles worker’s compensation information. This was a case of Broken
Function Level Authorization. The program code allowed internet access
to a protected area of the application. This led to the exposure of certain
information of about 1.8 million Texans, such as names, addresses, dates of
birth, phone numbers, part or all of Social Security numbers, and informa-
tion about injuries and workers’ compensation claims [19, 27]
The OWASP API Security T0p 10 and the examples of data breaches dis-
cussed in the previous sections highlight that are certain risks associated
with the use of APIs. These risks could be in [2]
• API accessibility
• integration frequency
• data retention
• third-party security
3.4. API Security 13
The document: Security Guidelines for Providing and Consuming APIs [3], of
the Cloud Security Alliance(CSA) provides guidelines that can be applied in
all phases of the development cycle of APIs as well as during the use. The
guidelines are presented based on two use cases based on the associated
risks, namely:
2. Egress Access
The security controls presented in Tables 3.1, 3.2, and 3.3 serve as security
requirements for Cloud APIs. More details on these controls are discussed
later on in Chapter 4.
With its use, the security features provided by API management tools are
usually not sufficient to ensure the secure use of APIs [53, 54]. A contribut-
ing factor is the lack of security in the design of APIs. Another significant
reason is the inability of API management tools and platforms to handle au-
thentication and authorization. Authentication and authorization services
usually identify the source of API requests. The failure of API management
tools in doing this can leave APIs vulnerable to attacks caused by a lack
of authorization. This is reflected in the T-Mobile breach that led to the
compromise of 2.3 million customer data. The API failed to check who was
making the query. As a result, any request for customer data made with
a valid phone number was granted. This led to the exposure of customer
data which could be used to gain access to other accounts or services used
by a customer to steal sensitive data. DDoS attack is another vulnerability
common to APIs. Poor design in APIs such as not putting rate limits on
API requests could lead to DDoS attack [53].
• Use-after-free checker
• Resource-leak checker
• User-namespace checker
The API Security Audit Framework by Sun et.al and the Security Rules and
Checkers by Atlidakis et al. all focus on different parts of an API system
that are crucial to assessing and maintaining API security. Nevertheless,
each approach is not sufficient enough to evaluate an API. In this report,
we would present a more general, but specific API assessment method that
takes into account various areas of an API system.
Chapter 4
API Assessment
Auditing of IT systems makes certain that the systems meet certain secu-
rity requirements [22]. The standard ISO/IEC 19770-1:2017 states 3 reasons
for auditing an IT asset management system, namely: to determine if a
system [22]
These reasons mentioned above also apply to APIs in order to ensure their
security.
Audits are usually carried out based on some criteria [21]. These audit cri-
teria are outlined in the ISO 19011:2018 standard on Guidelines for auditing
management systems. They include [21]
22
4.2. API Assessment 23
or other parties;
- management system plan(s) relating to the provision of specific outputs
of a management system(e.g. quality plan, project plan).
As with any IT system, the objectives, scope, and criteria for auditing APIs
should be defined from the beginning. Of equal importance is getting to
know the number of APIs the organization has and uses. Having this
knowledge helps to more clearly define the scope of the assessment. The
organization should have necessary documentations that provides valuable
information such as
The assets used by these APIs should be classified based on the level of
sensitivity, importance, and associated risks to the organization. For orga-
nizations that make use of API gateways and management tools, a thorough
understanding of how these tools work would make for a very efficient as-
sessment.
One of the criteria that could be used for assessing IT systems are require-
ments defined in management system standards [21]. Some widely recog-
nized standards are the ISO standards [20] and the NIST framework [32].
There is also the Cloud Control Matrix (CCM) [8] developed by Cloud Secu-
rity Alliance(CSA). Although there are no standards specifically dedicated
to APIs, the above-mentioned standards contain security controls that ap-
ply to Software applications and the Cloud as a whole. As a result, some of
the controls can be applied to APIs as well. In the subsections that follow
this chapter, we will have an overview of these controls that can prove very
useful in assessing APIs.
4.3. Proposed API Assessment Method 24
• Documentation
• Code
Documentation:
Documentations are very important in any IT system and this includes sys-
4.3. Proposed API Assessment Method 25
Code:
APIs are basically sets of instructions and codes. As such they should fol-
low the same security design principles as softwares, during development.
One such principle is input validation. This is what the control AIS-04 looks
out for. Other things to pay attention to include:
Details are provided in the later section of this chapter on what more can
be ascertained from analyzing the codes that make an API. Even though
analysis of the code can reveal a lot about an API, this is still limited. This
makes the use of API management tools very essential.
Another assessment criteria used here for evaluating APIs is based on the
document: Security Guidelines for Providing and Consuming APIs (SGPC APIs)
also from the Cloud Security Alliance. The controls in the document, are
mapped to the OWASP API TOP 1O 2019 [48] and when applied can ensure
4.3. Proposed API Assessment Method 26
the security of APIs from its design phase even through monitoring during
use [4].
The table below provides a classification of the controls from the Security
Guidelines for Providing and Consuming APIs, based on different areas of
applicability.
4.3. Proposed API Assessment Method 27
• Input Validation and Output Encoding: APIs that take some form of
input from a user or database require input validation to guarantee
that only the expected data is taken as input. Output encoding, on
the other hand, ensures that any input from the user, be it a script
from an attacker, does not have any malicious effect [46]. This also
helps control vulnerabilities such as injection attacks and Cross site
scripting [47].
• Safe Package Usage: There are many public APIs out there used by
many. These APIs probably have never been updated since they were
published. There is also a possibility that they may have been updated
at some point, but that may be a long time ago. As a result, these
APIs are running outdated packages. A good example is YouTube
Data API [14]. A look at its GitHub repository [15] showed the last
commit to it was done in 2018. The repository was tested to check
for vulnerabilities. One of the results showed it had a vulnerability
called Insecure Default. This is the case because the API is using New-
tonsoft.Json 6.0.4, a package of the Json.NET framework which was
released in August 2014. Figure 4.1 shows the test result.
4.3. Proposed API Assessment Method 29
Figure 4.1: Vulnerability Test on YouTube API detecting an outdated package in use 1
When assessing APIs, therefore, the APIs should be checked for vul-
nerabilities associated with outdated packages. These APIs should be
examined to ensure they are running the latest patch version avail-
able [4].
• Error Handling: How APIs respond to, or handle errors should not be
overlooked when auditing APIs. Its response to errors should never
reveal any information an attacker could exploit [4]. Code Analysis
and logs can be used to check for Error handling in APIs.
Software testing tools can be used to check for most of the code-dependent
controls. Synk was used to test the public APIs used for this project. Some
of the results of these tests are in the appendix.
4.3. Proposed API Assessment Method 30
• Denial of Service and Request Rate Limiting: Lack of control over how
an API is used, could result in denial of service. One way to prevent
this is by implementing rate limiting on requests. Rate limiting defines
the maximum number of requests allowed in a given time interval [9].
The rate limit of an API and its operations should be defined in the
organization’s security policy [4]. This is then used to check against
what is in the API management platform for consistency.
• Storage of HTTP Access Logs: API calls and requests should be prop-
erly logged. It should be verified that these logs do not contain any
sensitive data [4].
Having mapped these controls, we will now consider in detail how to au-
dit Cloud APIs from management platforms based on these controls. The
order of presentation is based on how each control relates to the other
As seen in Figure 4.2, the operation GetSessions of Demo Conference API has
three parameters of which response value is expected. The classification of
these data should be in the data privacy policies. When evaluating these
data and their implementation based on data classification, it should be
checked that the policies on this operation and those who are allowed ac-
cess to it reflect its sensitivity level.
1. Users and/or accounts who are allowed access to an API or API ser-
vice and their roles.
1. Global Policies: These policies cover all APIs in the management ser-
vice.
The figures below show an API management service with two APIs: Demo
Conference API and Echo API. Each shows specific areas to check on the
implementation of API policies.
As shown in the figures above, policies applied to API can vary in scope.
The policies in Figure 4.4 apply to all APIs in that Management service.
On the other hand, policies in Figure 4.5 can apply to all operations in
the Demo Conference API or a specific operation. Therefore, in auditing
cloud APIs for Application and Interface Security Policies, the scopes of the
policies should be checked to ensure they are in harmony with the docu-
mentation.
As part of the CCC-01 control, the API management service, and all soft-
ware, packages, and libraries in use should be examined to see if they are
updated.
Postman
The Postman platform can be used for performance testing of APIs. It tests
APIs based on requests and expected responses. This is done in two(2)
ways: Unit testing and End-to-End testing. Unit testing allows for the test-
ing of an individual endpoint in an API collection. End-to-End testing en-
ables the testing of all endpoints in an API collection one after the other.
supports. An enterprise can set up its API collection and test its autho-
rization to ensure it works as it should. This feature can also aid in security
testing when it comes to authentication. The results of an attempt at au-
thorization and authentication can be checked against the organization’s
policies on authorization and authentication to see if it is working as ex-
pected.
In configuring access tokens for an API in Postman, the client ID and client
secret can be supplied directly into the specified box or set as a variable.
Application secrets such as these, when input directly to the new token
form could likely be exposed, and used for malicious purposes. This can be
used to test for another security control, Control No. 7 in Table 4.4: Storage
of Application Secrets - Mode of transfer or delivery.
Other nice features of Postman are the Pre-request Scripts and Test scripts.
The Pre-request scripts are very useful for analyzing the codes before API
requests are sent. This can be used, for example, to search for a variable in
the code before the API request is sent. The Test scripts, on the other hand,
run tests scripts after the execution of API request [51]. These tests vary
from getting variables, the status code of the response to the API request,
to searching the response body for a string. These features can be used to
check the API requests and responses for sensitive data such as application
4.3. Proposed API Assessment Method 39
APISec
APISec is an API solution that provides automated testing for APIs. Its API
testing tool EthicalCheck is used in testing API. To test APIs using this tool,
the user needs to supply its Open-API Specification URL or a Postman URL.
The EthicalCheck Engine invokes the API and runs tests on it, scanning for
the OWASP API Top Ten list. On successful completion of the process, a
report is generated, detailing the outcome of the scan. The image below
shows a summary of the scan result of an Online Banking REST API.
As evident in the scan result above, the APISec scanner discovers all end-
4.4. Evaluation of A Public API Following This Extensive Approach 40
points associated with the API to be tested. With this discovery, the meth-
ods in each endpoint are all tested for vulnerabilities. The vulnerabilities
discovered are classified based on the level of severity and their impact on
the business. This classification of discovered vulnerabilities would help an
organization determine what areas to pay more attention to and prioritize
how to remedy the associated risks.
An attempt was made in assessing a Public API using the extensive ap-
proach outlined in earlier sections of this chapter. The assessed API is a
Simple Inventory API. It is a public API with an Open API specification
available for use on SwaggerHub. This API was assessed using the Azure
API Management Platform and Postman. It is assumed that an organization
is
• using this API as built by the developer without any added security
measures
The table below provides the results of the assessment of this API using
the controls from Security Guidelines For Providing and Consuming APIs. The
remark "Y" means a particular control is implemented correctly, while "N"
signifies it is not implemented. On the other hand, when "N/A" is used it
means a certain command is not applicable.
4.4. Evaluation of A Public API Following This Extensive Approach 41
Assessment of the Simple Inventory API showed using Azure API Manage-
ment Service showed
The Postman tool was also used to test and assess this API. The results of
the assessment are as follows
4. A view of the raw form of the requests and results showed that cookies
were not used in sending the server’s response to the API Call. Hence,
the API is protected from Cross-Site Request Forgery.
The security controls with the remark "N/A", "Review test reports" and
"Review code test results in line with organizational Policies" were not ap-
plicable in this assessment as the security controls can only be examined in
a real API system, not a test system. Also, it was a challenge integrating this
API into the software testing tool Snyk. However, vulnerability scanning of
the YouTube Data API was achieved with the software testing tool Snyk.
A Screenshot of the test result was presented earlier in this chapter. Other
screenshots of the test results are in the appendix.
Chapter 5
5.1 Discussion
The API audit system proposed by Sun et.al mentioned earlier in related
works, is based on data analysis of captured internet traffic [54]. As effec-
tive as that may sound, it can be time-consuming as well. It would take
a lot of time to analyze captured network, especially when that is done
manually. Additionally, this system of audit is focused more on the iden-
tification of APIs and vulnerabilities through the data flow of API assets.
Basing security audits only on assets can be limiting. How quickly can an
unauthorized attempt by an insider, from a legitimate source IP be detected
using this system? A lot can go wrong and may probably not be captured
by internet traffic.
The proposed API assessment method applied in this report, therefore fo-
cuses more on tools and platforms commonly used with APIs today. The
Cloud Control Matrix and the Security Guidelines for Providing and Con-
suming APIs, all created by the Cloud Security Alliance were used for this
project. The specifics of the security controls in the Security Guidelines for
providing and Consuming APIs make it a good reference, for audit criteria
when accessing APIs. However, the choice of audit criteria is always depen-
dent on the needs of the organization requiring an audit.
44
5.1. Discussion 45
testing tool.
5.2 Conclusion
It has been established that security is not taken into consideration in the
design of APIs. With the rise in data breaches experienced in the use of API,
an API audit is necessary to review how organizations implement security
measures in API. It has also been seen that security vulnerabilities such as
Broken Object Level Authentication, Broken function-level authentication,
and Security misconfiguration are some of the vulnerabilities common to
APIs. When adequate measures are not put in place, exploitation of these
vulnerabilities can come in the way of confidentiality, integrity, and avail-
ability of an organization’s assets and its API system. The Security Guide-
lines for Providing and Consuming APIs [4] provides security controls that
when implemented can help ensure the confidentiality, integrity, and avail-
ability of APIs. An extensive approach to how best these controls can be
used to assess cloud APIs has also been considered.
Assessment of the Business Logic of an API would be a great topic to con-
sider for further research on this subject
Bibliography
[1] Akamai. Akamai State of the Internet Security Report: Retailers Most Com-
mon Credential Stuffing Attack Victim; Points to Dramatic Rise in API
Traffic as Key Trend. Accessed: 2023-03-02. url: https://www.akamai.
com/us/en/about/news/press/2019- press/state- of- the- internet-
security-retail-attacks-and-api-traffic.jsp.
[2] Cloud Security Alliance. A New Resource for API Security Best Practices.
Accessed: 2023-03-10. url: https://cloudsecurityalliance.org/blog/
2021/04/30/a-new-resource-for-api-security-best-practices/.
[3] Cloud Security Alliance. Security Guidelines for Providing and Consum-
ing APIs. Accessed: 2023-03-10. url: https : / / cloudsecurityalliance .
org / artifacts / security - guidelines - for - providing - and - consuming -
apis/.
[4] Cloud Security Alliance. Security Guidelines for Providing and Consum-
ing APIs. 2021. url: https : / / cloudsecurityalliance . org / artifacts /
security-guidelines-for-providing-and-consuming-apis/.
[5] Nordic APIs. 6 Types of APIs: Open, Public, Partner, Private, Composite,
Unified. Accessed: 2023-05-26. url: https://nordicapis.com/6-types-
of-apis-open-public-partner-private-composite-unified/.
[6] Vaggelis Atlidakis, Patrice Godefroid, and Marina Polishchuk. “Check-
ing Security Properties of Cloud Service REST APIs”. In: 2020 IEEE
13th International Conference on Software Testing, Validation and Verifica-
tion (ICST). 2020, pp. 387–397. doi: 10.1109/ICST46399.2020.00046.
[7] Livia Maria Brumă. “Cloud security audit – issues and challenges”.
In: 2021 16th International Conference on Computer Science & Education
(ICCSE). 2021, pp. 263–266. doi: 10.1109/ICCSE51940.2021.9569654.
[8] Cloud Security Alliance. Cloud Controls Matrix (CCM). en. fFrame-
work. 2021. url: https://cloudsecurityalliance.org/artifacts/cloud-
controls-matrix-v4/.
[9] IBM Corporation. Understanding rate limits for APIs and Plans. Ac-
cessed: 2023-05-15. url: https : / / www. ibm . com / docs / en / api -
connect/10_reserved_instance?topic=connect- understanding- rate-
limits-apis-plans.
[10] Google. Cloud Firewall. Accessed: 2023-05-22. url: https : / / cloud .
google.com/firewall#section-1.
47
Bibliography 48
[11] Google. Understanding APIs and API proxy. Accessed: 2023-05-16. url:
https://cloud.google.com/apigee/docs/api-platform/fundamentals/
understanding-apis-and-api-proxies.
[12] Google. What is API Management? Accessed: 2023-05-12. url: https :
//cloud.google.com/learn/what-is-api-management?.
[13] Google. What is cloud architecture? Accessed: 2023-05-22. url: https :
//cloud.google.com/learn/what-is-cloud-architecture#section-6.
[14] Google. YouTube Data API v3. url: https : / / console . cloud . google .
com/apis/library/youtube.googleapis.com?project=psyched-choir-
377513.
[15] Google. YouTube Data API v3. url: https://github.com/youtube/api-
samples.
[16] HubSpot. 4 Types of APIs All Marketers Should Know. Accessed: 2023-
05-26. url: https://blog.hubspot.com/website/types-of-apis.
[17] HubSpot. REST API (Introduction). Accessed: 2023-05-26. url: https:
//www.geeksforgeeks.org/rest-api-introduction/.
[18] Fatima Hussain et al. “Enterprise API Security and GDPR Compli-
ance: Design and Implementation Perspective”. In: IT Professional 22.5
(2020), pp. 81–89. doi: 10.1109/MITP.2020.2973852.
[19] Texas Department of Insurance. Notice of Data Security event. Accessed:
2023-03-25. url: https://www.tdi.texas.gov/data- security- event/
index.html.
[20] ISO. Standards. Accessed: 2023-05-02. url: https : / / www. iso . org /
standards.html.
[21] ISO Central Secretary. Guidelines for auditing management systems. en.
Standard. Geneva, CH, 2018. url: https://www.iso.org/standard/
70017.html.
[22] ISO Central Secretary. Information technology – Part 1: IT asset man-
agement systems – Requirements. en. Standard. Geneva, CH, 2017. url:
https://www.iso.org/standard/68531.html.
[23] Bahruz Jabiyev et al. “Preventing Server-Side Request Forgery At-
tacks”. In: Proceedings of the 36th Annual ACM Symposium on Applied
Computing. SAC ’21. Virtual Event, Republic of Korea: Association
for Computing Machinery, 2021, 1626–1635. isbn: 9781450381048. doi:
10.1145/3412841.3442036. url: https://doi.org/10.1145/3412841.
3442036.
[24] Snyk Limited. Snyk. url: https://www.nist.gov/cyberframework/
framework.
[25] Suryadipta Majumdar et al. “Cloud security auditing: Major approaches
and existing challenges”. In: Foundations and Practice of Security: 11th
International Symposium, FPS 2018, Montreal, QC, Canada, November 13–
15, 2018, Revised Selected Papers 11. Springer. 2019, pp. 61–77.
Bibliography 49
[54] Ronghua Sun, Qianxun Wang, and Liang Guo. “Research Towards
Key Issues of API Security”. eng. In: Communications in Computer and
Information Science. Vol. 1506. 2022, pp. 179–192. isbn: 9811692289.
[55] Twitter. An incident impacting some accounts and private information on
Twitter. Accessed: 2023-03-11. url: https://privacy.twitter.com/en/
blog/2022/an-issue-affecting-some-anonymous-accounts.
[56] Kazi Wali Ullah, Abu Shohel Ahmed, and Jukka Ylitalo. “Towards
Building an Automated Security Compliance Tool for the Cloud”. In:
2013 12th IEEE International Conference on Trust, Security and Privacy
in Computing and Communications. 2013, pp. 1587–1593. doi: 10.1109/
TrustCom.2013.195.
[57] WhiteBlueOcean. Retroactive Auditing. Accessed: 2023-03-24. url: https:
//www.whiteblueocean.com/newsroom/5- key- data- breaches- in-
2022/.
[58] M. Frans Kaashoek Xi Wang Nickolai Zeldovic. Retroactive Auditing.
Accessed: 2023-03-23. url: https://people.csail.mit.edu/nickolai/
papers/wang-rad.pdf.
Appendix A
Appendix
52
53