CLOUD APP DEVELOPMENT
Article | July 18, 2022
Our security research team prepared to explain a real attack scenario from the black box and white box perspective on how a vulnerable AWS Lambda function could be used by attackers as initial access into your cloud environment. Finally, we show the best practices to mitigate this vector of attack.
Serverless is becoming mainstream in business applications to achieve scalability, performance, and cost efficiency without managing the underlying infrastructure. These workloads are able to scale to thousands of concurrent requests per second. One of the most used Serverless functions in cloud environments is the AWS Lambda function.
One essential element of production raising an application is security. An error in code or a lack of user input validation may cause the function to be compromised and could lead the attackers to get access to your cloud account.
About AWS Lambda function
AWS Lambda is an event-driven, serverless compute service which permits the execution of code written in different programming languages and automates actions inside a cloud environment.
One of the main benefits of this approach is that Lambda runs our code in a highly available compute infrastructure directly managed by AWS. The cloud provider takes care of all the administrative activities related to the infrastructure underneath, including server and operating system maintenance, automatic scaling, patching, and logging.
The user can just use the service implementing their code and the function is ready to go.
Security, a shared pain
From a security perspective, due to its nature to be managed by the cloud provider but still configurable by the user, even the security concerns and risks are shared between the two actors.
Since the user doesn’t have control over the infrastructure behind a specific Lambda function, the security risks on the infrastructure underneath are managed directly by the cloud provider.
Using AWS IAM, it’s possible for the user to restrict the access and the permitted actions of the lambda function and its components. Misconfiguration on permission over IAM roles or objects used by the Lambda function might cause serious damage, leading attackers inside the cloud environment. Even more importantly, the code implemented into the Lambda function is under user control and, as we will see in the next sections, if there are security holes into the code, the function might be used to access the cloud account and move laterally.
We are going through two attack scenarios using two different testing approaches: black box and white box testing, which are two of the main testing approaches used in penetration testing to assess the security posture of a specific infrastructure, application, or function.
Looking at the Lambda function from a different perspective would help to create a better overall picture of the security posture of our function, and help us better understand the possible attacks and the related risks.
Black box vs white box
In Black box testing, whoever is attacking the environment doesn’t have any information about the environment itself and the internal workings of the software system. In this approach, the attacker needs to make assumptions about what might be behind the logic of a specific feature and keep testing those assumptions to find a way in. For our scenario, the attacker doesn't have any access to the cloud environment and doesn’t have any internal information about the cloud environment or the functions and roles available in the account.
In White box testing, the attacker already has internal information which can be used during the attack to achieve their goals. In this case, the attacker has all the information needed to find the possible vulnerabilities and security issues.
For this reason, white box testing is considered the most exhaustive way of testing. In our scenario, the attacker has read-only initial access in the cloud environment and this information can be used by the attacker to assess what is already deployed and better target the attack.
In this attack scenario the attacker found a misconfigured S3 bucket open to the public where there are different files owned by the company.
The attacker is able to upload files into the bucket and check the files configuration once uploaded. A Lambda function is being used to calculate the tag for each file uploaded, although the attacker doesn’t know anything about the code implemented in the lambda.
We can be pretty confident there is an AWS Lambda function behind those values. The function appears to be triggered when a new object is created into the bucket. The two tags, Path and Size, seem to be calculated dynamically for each file, perhaps executing OS commands to retrieve information.
We can assume the file name is used to look for the file inside the OS and also to calculate the file size. In other words, the file name might be a user input which is used in the OS command to retrieve the information to put in the tags. Missing a user input validation might lead an attacker to submit unwanted input or execute arbitrary commands into the machine.
In this case, we can try to inject other commands into the file name to achieve remote code execution. Concatenating commands, using a semicolon, is a common way to append arbitrary commands into the user input so that the code would execute them if the user input isn’t well sanitized.
We have seen the attack scenario from the black box and white box perspectives, but what can we do to mitigate this scenario? In the proposed scenario, we covered different AWS components, like S3 buckets and AWS lambda, in which some security aspects have been neglected.
In order to successfully mitigate this scenario, we can act on different levels and different features. In particular, we could:
Disable the public access for the S3 bucket, so that it will be accessible just from inside and to the users who are authenticated into the cloud account.
Check the code used inside the lambda function, to be sure there aren’t any security bugs inside it and all the user inputs are correctly sanitized following the security guidelines for writing code securely.
Apply the least privileges concept in all the AWS IAM Roles applied to cloud features to avoid unwanted actions or possible privilege escalation paths inside the account.
Let’s have a look at all the points mentioned above in detail on how we can enforce those mitigations.
Disable the public access for the S3 bucket
An S3 bucket is one of the key components in AWS used as storage. S3 buckets are often used by attackers who want to break into cloud accounts.
It’s critical to keep S3 buckets as secure as possible, applying all the security settings available and avoiding unwanted access to our data or files.
For this specific scenario, the bucket was publicly open and all the unauthorized users were able to read and write objects into the bucket. To avoid this behavior, we need to make sure that the bucket is available, privately applying the following security settings to restrict the access.
Article | July 8, 2022
IBM CloudBurst is a ready-to-use, self-contained service delivery platform that can be deployed fast and efficiently in a data center. It enables the data center to create service platforms for a wide range of workload types with a high degree of integration, flexibility, and resource optimization, resulting in a better request-driven user experience while also reducing costs and expediting time to market for the company. In addition, the GTS installation service is included in IBM CloudBurst, making it a comprehensive bundle of hardware, software, and services to get it up and running in your environment right away.
To quickly integrate cloud computing, IBM CloudBurst combines the necessary hardware, software, and service components. IBM CloudBurst, as a single solution, simplifies the complexities of establishing a cloud computing architecture, allowing businesses to immediately grasp the benefits and financial potential of a dynamic infrastructure. For de-mystifying a cloud computing model, CloudBurst can help enterprises discover the benefits and business possibilities of a dynamic infrastructure more rapidly. As a cloud computing quickstart, IBM CloudBurst allows businesses to demonstrate the benefits of the delivery model in a specific area of their data center or for a single internal project.
Building a Dynamic Infrastructure With IBM Cloudburst
IBM’s Service Delivery Manager Solution for x86 and Power systems is based on a pre-integrated, software-only stack. It is installed as a set of virtual images that automate the deployment of IT services and enables resource monitoring, cost management, and service provisioning in the cloud.
Similarly, depending on your company's needs, you can pick how much capacity to employ by adding cloud bursting to your LSF Cluster. When time is money, the cloud is ready. The meter stops, and the cloud waits when demand is low.
Computing Heavy Workloads With Resource Planning
It's challenging to establish a delicate balance between the expense of computing resources and the cost of delayed judgments. However, with the introduction of cloud bursting, a new level of flexibility has become available to break the impasse. When space in your data center is limited, you can now extend your existing IBM Spectrum LSF cluster to the IBM Cloud, where you can access almost infinite resources and only pay for what you use.
“Automating IT resources to support new applications is critical because at most companies, a business user typically must wait weeks to get access to new IT resources due to the manual processes required to set up resources,” said Lauren States, vice president of Tivoli Cloud Computing for IBM.
This automation not only simplifies the initial creation of a proof-of-concept cluster but also provides the basic toolset for the rapid provisioning and takedown of resources that define cloud bursting.
One of the numerous advantages of the cloud is that you are never tied to a specific piece of hardware. If you choose a storage cluster and later require more capacity or performance, you can always rebuild it with more resources.
Today's businesses can pick from a variety of storage technologies. That is why it is critical to comprehend the many alternatives, their usefulness, and the appropriate use cases for the various storage mechanisms. To meet today's modern business needs, IBM offers a variety of storage options.
Article | July 19, 2022
Elastic announced the launch of Elastic Security for Cloud, extending the capabilities of the existing Elastic Security offering, which included SIEM and endpoint protection, to incorporate cloud risk and posture management and cloud workload protection.
The new solution allows enterprises to manage their security posture for cloud-native and hybrid environments with infrastructure detection and response (IDR) and a machine learning offering that can detect known and unknown threats in cloud environments.
This approach means that enterprises can detect and respond to malicious activity in the cloud as soon as possible to minimize the risk and damage caused by intrusions.
Addressing cloud complexity
The release comes as modern enterprises are struggling to secure cloud environments.
Research shows that not only are 76% of organizations using two or more cloud providers, but also that 35% of organizations have more than 50% of their workloads in the cloud. This means for many organizations, protecting the cloud attack surface is now vital to maintaining operational stability.
In other words, the complexity of cloud deployments has created a need for solutions with cloud detection and response capabilities, so that enterprises can respond to threat actors who are targeting this new attack surface.
“The world has rapidly transitioned to the cloud and chosen operations over security. Cloud infrastructure is stood up and torn down at a blazing rate and many different teams are deploying these cloud instances. Just answering the question, ‘Am I good?’ is an increasingly complex question to answer for CIO/CISOs,”
Mike Nichols, vice president of product for Elastic Security
Elastic’s answer to monitoring these environments, is a cloud posture management and IDR solution that can improve security teams visibility over external threats.
The cloud security market
Elastic Security is competing in the global cloud security market, which researchers valued at $40.8 billion in 2021 and anticipate will grow to $77.5 billion by 2026 as enterprises attempt to keep up with the increasing sophistication of cyberattacks, and rise in bring your own device (BYOD) and (choose your own device) policies.
In the realm of cloud security, one of Elastic’s main competitors is Splunk, a cloud and observability monitoring platform that can monitor public clouds, apps, services, on-premise data centers, and edge services. Last year, Splunk announced it had received a $1 billion investment from Silver Lake.
Another competitor in the market is Wazuh, an XDR and SIEM tool designed for protecting endpoints and cloud workloads with vulnerability detection, log data analysis, workload protection, and container security.
Wazhu currently has more than 10 million downloads per year and is used by a range of companies including Verifone, Walgreens, Rappi, Grubhub, Intuit, and more.
Although, one of the key differentiators between Elastic Security is that the solution is built on the Elastic Search Platform, with analytics, SIEM, endpoint protection, XDR and cloud security all offered as part of one single offering.
CLOUD APP DEVELOPMENT
Article | May 20, 2022
Database Management in the Cloud Computing Era
A cloud computing database is ideally a service that is built, deployed, and delivered via a cloud platform. A cloud platform as a service (PaaS) delivery model allows organizations, end-users and applications to store, manage and retrieve data using the cloud. When seen from a structural and design perspective, a cloud database is not very different from one that operates its business using its own on-premise servers. However, ever since big data has entered space, database management has become a little more complex. In addition to all the traditional and structured data, we also have semi-structured and unstructured data coming in from almost all directions.
In recent times, there has been significant adoption of cloud platforms, infrastructures and services. The idea of the blend of cloud technology with database services has garnered more demand with respect to management.
Cloud databases, which arealso widely termed Database-as-a-Service (DaaS), offer various added options for organizations to choose. With the current rate of adoption, experts have a strong feeling that DaaS will, just like any other "as-a-service", will become the standard solution for all highly sensitive and mission-critical data.
How Can Cloud Database Management Help Your Business?
Every organization has the constant need to manage its data in the most efficient way possible. A cloud database effectively fulfills all the needs of any organization with respect to data, ranging from keeping the information secure, accurate and consistent for resource utilization and optimal performance. Cloud data management is constantly changing the way organizations think about data. The cloud helps bring in the required versatility, security, and professional data management assistance that is required. For any business to survive and succeed, it should ensure that the data is healthy so that everyone in the organization has access to the data they need, when they need it.
"Line-of-business leaders everywhere are bypassing IT departments to get applications from the cloud (also known as software as a service, or SaaS) and pay for them similar to a magazine subscription. And when the service is no longer required, they can cancel that subscription with no equipment left unused in the corner." - Daryl Plummer, Gartner analyst
Effective Strategies forDatabase Management in Cloud Computing
Using a cloud-based database ensures that it is easy for your database to grow along with your needs and requirements, in addition to scaling up or down on-demand to accommodate specific peak-workload phases. Ideally, before procuring a cloud data management system, it is essential to have a solid strategy that would suit best with your organization's ecosystem and, at the same time, would also help you getthe most out of the system you select.
Exploring the Best Practices for DBM in Cloud Computing
With the idea ofeffectively developing, monitoring and managing database infrastructure, there are various methods that organizations can use. These days, organizations also have the option for a ready-made database management system or picking a tailored solution as per their requirements. Keeping all these aspects in mind, it is also essential that these organizations enroll themselves in the best practices followed to ensure optimum results are achieved.
Some of the best practices for database management in cloud computing are mentioned below:
Before moving to the cloud, build a robust data management architecture.
Give cloud data integration requirements the first priority.
Regardless of the data's platform or location, govern it comprehensively.
Use encryption and VPN to protect data in transit.
Automate database management tasks to keep track of them.
Why Is Cloud DBMS the C-Suite’s Pick?
While it is more than evident that in today's age and time, data management is one of the most crucial components of any organization, it is also right up the area of value addition for all the top executives in an organization. Every industry relies vastly on data and its management, with the significant shift towards cloud servicestaking place constantly several organizations and the c-suite are now evaluating what cloud services bring to their table, especially on the data front. Once the core pain points are assessed and the c-suite gets the picture of how cloud database management systems would help them become more efficient, there wouldn't be any other obvious choice.
Microsoft Consulting Services, along with Tata Consultancy Services (TCS), partnered with Walgreens to create the Information, Data, and Insights (IDI) platform powered by Azure.When patients or medical providers initiate the prescription fulfilment process, Azure Databricks and Azure Synapse Analytics move hundreds of related data points through the IDI. Pharmacists can access information through a centralized dashboard interface and request data visualizations.Pharmacists gain real-time insights, and the system can scale as needed to meet current needs. During peak times, the platform can handle more than 40,000 transactions per second. Compared to Walgreens’ previous solution, the private cloud-based architecture, saves an enormous amount of time on every transaction — prescription data that once took about 48 hours to reach its data warehouse can be handled by Walgreens within minutes.
With the next big things being data and the cloud, how can an amalgamation of both be wrong? Having said this, everyone willhave their own share of concerns and questions. But with what is being built and functions being worked upon, this space is bound to bring in numerous opportunities. So when the world is slowly makingthis shift, it's time you reconsidered, if you haven't already, before you get overwhelmed at the helm of data!
What Are the Best Features Available in Cloud Database Management?
While there are numerous features that one can leverage using Cloud Database Management, the top 5 of its features are listed below:
Easy data reduction
Which Is the Most Popular Cloud Database?
One of the most popular and widely used cloud databases is the Microsoft Azure cloud database. It provides services in computing, networking, databases, analytics, artificial intelligence, and the Internet of Things.
In Cloud Computing, What Is Database Management?
Cloud data management is a technique for managing data across cloud platforms, either in combination with or instead of on-premises storage. Disaster recovery, backup, and long-term archiving can benefit from using the cloud as a data storage tier. In addition, resources can be acquired as needed using cloud data management.