<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sena Yakut</title>
    <description>The latest articles on DEV Community by Sena Yakut (@senaykt).</description>
    <link>https://dev.to/senaykt</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F843998%2Fdc79f092-5876-445f-80c6-04b7eae245a0.PNG</url>
      <title>DEV Community: Sena Yakut</title>
      <link>https://dev.to/senaykt</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/senaykt"/>
    <language>en</language>
    <item>
      <title>AWS re:Invent 2023: Security Session Notes 📝</title>
      <dc:creator>Sena Yakut</dc:creator>
      <pubDate>Sat, 02 Dec 2023 22:04:35 +0000</pubDate>
      <link>https://dev.to/aws-builders/aws-reinvent-2023-security-session-notes-48k5</link>
      <guid>https://dev.to/aws-builders/aws-reinvent-2023-security-session-notes-48k5</guid>
      <description>&lt;p&gt;AWS re:Invent 2023 is completed in Las Vegas. I’ve watched some security-focused sessions and announcements online and I want to share my notes with you. I hope you will enjoy it! Let’s start! 🥰&lt;/p&gt;




&lt;p&gt;&lt;u&gt;&lt;strong&gt;🧐 Sessions that I’ve recommended:&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;💁‍♀️ Move fast, stay secure: Strategies for the future of security (SEC237):&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=T-LwDlZbbU4"&gt;In this innovation talk&lt;/a&gt;, we start with “Security is a people issue. Computers do not attack each other.”&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Security operations like playing chess, we need to predict the attackers’ actions. In this game, technology and humans are together.&lt;/li&gt;
&lt;li&gt;Human and AI. We need both of them for better security. AI increases work efficiency, but we still need people to decide. AI cannot decide. We need talented engineers to decide.&lt;/li&gt;
&lt;li&gt;In the cybersecurity area, we have a talent gap. Security knowledge is not enough, we need engineers who understand the organizational logic of the company.
With the AI popularity, we have lots of concerns and lots of to-dos as security professionals. You should ask yourself and your environment if you’re building your app with AI or build AI: “Where is my data?”, “What happens with my query and any associated data?”, “Is the output of these models accurate enough?” From AWS's perspective = “Your data is your data.”&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;💁‍♀️ Elevate your security investigations using generative AI (SEC244):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=Vf-s3ZQmJhc"&gt;In this session&lt;/a&gt;, we learn about Amazon Detective and the newest announcements. There are 3 different challenges in security investigations and we can solve them with Amazon Detective:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Analysts cannot review every high-priority security issue.&lt;/li&gt;
&lt;li&gt;Shortage of skilled security professionals.&lt;/li&gt;
&lt;li&gt;Increasing cost and complexity with investigating potential security findings.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Amazon Detective collects security logs from different services and analyzes them with different ML algorithms.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz73gd2qwg63kil50om88.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz73gd2qwg63kil50om88.png" alt="Amazon Detective" width="800" height="441"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;We have a new feature called “&lt;strong&gt;Finding Group Summary&lt;/strong&gt;”. With this feature, the findings are summarized with correlated behaviors and are more understandable.&lt;/li&gt;
&lt;li&gt;Another one is integration with &lt;strong&gt;Security Lake for root cause analysis&lt;/strong&gt;. Amazon Detective uses the prepared queries or tunes them to meet the specific security needs of any investigation.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In the session, we also have an example scenario that we can analyze with Detective. It helps us to understand the use cases and new features in detail.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmda0m8w8bs4hwtagpqf0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmda0m8w8bs4hwtagpqf0.png" alt="Investigation with Amazon Detective" width="800" height="451"&gt;&lt;/a&gt;&lt;br&gt;
If you want to use Amazon Detective for your workloads, &lt;a href="https://aws.amazon.com/detective/pricing/"&gt;this is the pricing.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;💁‍♀️ Amazon S3 security and access control best practices (STG315):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=WZGG8RkvApY"&gt;In this session,&lt;/a&gt; I felt like I was taking a security specialty exam course, and liked it. We saw lots of different usages of different approaches to secure our S3 buckets.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Firstly, we should know AWS S3 is secure by default: Encryption (SSE-S3) by default, S3 blocks public access enabled by default, and S3 ACLs are disabled by default. In the S3 access management process, it’s important to understand IAM (obviously), bucket policies, and conditions.&lt;/li&gt;
&lt;li&gt;For access management, AWS recommends not using ACLs anymore. If you want to track your ACL usage, you can use S3 Inventory reports, CloudTrail, and S3 access logs.
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F38kggvge1a1861xn3ldr.png" alt="Multiple mechanisms for access management for Amazon S3" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;For encryption, AWS has different options for our objects. This cool table summarizes it. You can choose the best option for your regulatory and security needs.
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpr6l0xs96pirf0i39l2d.png" alt="AWS S3 encryption at rest options" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;If you have strict regulatory needs about your data, consider dual-layer server-side encryption. All details are &lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/06/amazon-s3-dual-layer-encryption-compliance-workloads/"&gt;here.&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;If you want to decrease your costs of encryption/decryption processes, you can use S3 bucket keys. The logic is simple here: In the first request, we’re going to request to KMS, in Nth requests, we’re going to S3 bucket keys that are time-limited within Amazon S3. It also works with multi-tenant environments.
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv8p1bss8e23lrukdc0s4.png" alt="S3 bucket keys decryption process" width="800" height="454"&gt;
&lt;/li&gt;
&lt;li&gt;If you want to simplify the security management for S3, you can use S3 access points. Each S3 access point has its own DNS name and point policy.
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fujyb7j71xaayeabb9kwf.png" alt="S3 access points" width="800" height="454"&gt;
&lt;strong&gt;NEW: S3 Access Grants: And wow, we have a new access control mechanism.&lt;/strong&gt; You can define granular access to your Amazon S3 data based on applications, personas, groups, or organizational units.
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbnlg2kdfv79q22zx8jum.png" alt="S3 access grants" width="800" height="454"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;💁‍♀ ️Governance and security with infrastructure as code (DOP209):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is a developer-focused talk. We can learn how to catch issues early with cdk-nag, validate your pipelines with cfn-guard, and protect your accounts from unintended changes with CloudFormation hooks.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcnb8005iezcqhex5d0ib.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcnb8005iezcqhex5d0ib.png" alt="Governance and security with infrastructure as code" width="800" height="442"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;💁‍♀️ Safeguarding infrastructure from DDoS attacks with AWS edge services (NET201):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=KpAao6ox-cM"&gt;Interesting session about DDoS attacks and mitigation tactics.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;💁‍♀ ️Streamlining security investigations with Amazon Security Lake (SEC234):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We heard about Amazon Security Lake in re: Invent 2022. &lt;a href="https://www.youtube.com/watch?v=g5uIrAod910"&gt;In this session&lt;/a&gt;, we will gain visibility for comprehensive security investigations and swift incident responses in hybrid environments.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;💁‍♀ Centralize user activity from external sources in AWS CloudTrail Lake (COP341):&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=5CaJ_dTgTMU"&gt;This is a quick demo session&lt;/a&gt; and I like it. We will learn how we can use AWS CloudTrail Lake to centralize user activity from external sources in one place.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;&lt;u&gt;🧐 Announcements that I’ve noted:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- Integrating Amazon Inspector scans into your CI/CD pipeline:&lt;/strong&gt; &lt;a href="https://docs.aws.amazon.com/inspector/latest/user/scanning-cicd.html"&gt;You can use Amazon Inspector as your scanner for your images.&lt;/a&gt; It’s an important update for DevSecOps.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- IAM Access Analyzer now simplifies inspecting unused access to guide you toward the least privilege:&lt;/strong&gt; We love the “at least privilege principle”. As you know, it’s hard to provide an audit of this in all AWS accounts. &lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/iam-access-analyzer-inspecting-unused-access/"&gt;AWS IAM Access Analyzer now simplifies inspecting unused access.&lt;/a&gt; Note: Please read the pricing guide before you start to use this.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- Amazon Inspector agentless vulnerability assessments for EC2 (preview):&lt;/strong&gt; Amazon Inspector now offers continuous monitoring of your Amazon EC2 instances for software vulnerabilities &lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/amazon-inspector-agentless-assessments-ec2-preview/"&gt;without installing an agent or additional software.&lt;/a&gt; You can use this feature within the hybrid mode.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- Introducing Amazon GuardDuty ECS Runtime Monitoring, including AWS Fargate:&lt;/strong&gt; Your first to-do in an AWS account, enable GuardDuty. In containerized environments, it’s important to add threat intelligence for it. &lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/amazon-guardduty-ecs-runtime-monitoring-fargate/"&gt;AWS announces Amazon GuardDuty ECS Runtime Monitoring&lt;/a&gt;, an expansion of Amazon GuardDuty that introduces runtime threat detection for Amazon ECS workloads — including serverless container workloads running on AWS Fargate.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- Amazon Inspector expands AWS Lambda code scanning with generative AI-powered remediation:&lt;/strong&gt; For the reducing time to fix it’s an important update. &lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/amazon-inspector-aws-lambda-code-scanning/"&gt;AWS includes assisted code remediation using generative AI and automated reasoning to Amazon Inspector.&lt;/a&gt; Note: I’ve tested this feature and got some errors about it. I’ll reach out to the support team.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- AWS Config launches generative AI-powered natural language querying (preview):&lt;/strong&gt; We can ask questions like: “Show me all non-compliant S3 buckets in my organization.” It simplifies the investigation and search of &lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/aws-config-generative-ai-powered-natural-language-querying-preview/"&gt;AWS resource configurations and changes for our resources.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- AWS announces CloudWatch Logs Anomaly Detection and Pattern Analysis:&lt;/strong&gt; Anomaly detection is important for our production workloads. &lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/aws-cloudwatch-logs-anomaly-detection-pattern-analysis/"&gt;Using these new features, we can identify unusual events, and use these accelerate our investigation.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- Amazon Detective announces investigations for IAM:&lt;/strong&gt; Amazon Detective provides an investigation of AWS IAM entities for anomalies. &lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/amazon-detective-investigations-iam/"&gt;This new capability&lt;/a&gt; helps us determine whether IAM entities have potentially been compromised or involved in any known scenarios.&lt;br&gt;
&lt;strong&gt;- You can now customize security controls in AWS Security Hub:&lt;/strong&gt; We always need customization based on our environments for security posture management. &lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/customize-security-controls-aws-security-hub/"&gt;With custom control parameters&lt;/a&gt;, Security Hub evaluates the control against the value that we specify. There are some customization examples from AWS:&lt;br&gt;
*[CloudWatch.16] — CloudWatch log groups should be retained for a specified period: You can specify the retention period.&lt;br&gt;
*[IAM.7] — Password policies for IAM users should have strong configurations: You can specify parameters related to password strength&lt;br&gt;
*[EC2.18] — Security groups should only allow unrestricted incoming traffic for authorized ports: You can specify which ports are authorized to permit unrestricted incoming traffic.&lt;br&gt;
*[Lambda.5] — VPC Lambda functions should operate in multiple Availability Zones: You can specify the minimum number of Availability Zones that produce a passed finding.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;- Amazon CodeWhisperer offers new AI-powered code remediation, IaC support, and integration with Visual Studio:&lt;/strong&gt;  We love the shift left principle as DevSecOps engineers and security professionals. W&lt;a href="https://aws.amazon.com/blogs/aws/amazon-codewhisperer-offers-new-ai-powered-code-remediation-iac-support-and-integration-with-visual-studio/"&gt;ith an AI-powered code remediation feature&lt;/a&gt;, it provides generative AI-powered code suggestions to help remediate identified security and code quality issues. Fix before exist.&lt;/p&gt;

&lt;p&gt;Thanks for reading! Stay secure in the cloud! 🌤&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloud</category>
      <category>security</category>
      <category>devops</category>
    </item>
    <item>
      <title>🎆Party Time: Your Security Supporters with PartyRock</title>
      <dc:creator>Sena Yakut</dc:creator>
      <pubDate>Sun, 19 Nov 2023 10:42:21 +0000</pubDate>
      <link>https://dev.to/aws-builders/party-time-your-security-supporters-with-partyrock-gk</link>
      <guid>https://dev.to/aws-builders/party-time-your-security-supporters-with-partyrock-gk</guid>
      <description>&lt;p&gt;&lt;a href="https://aws.amazon.com/blogs/aws/build-ai-apps-with-partyrock-and-amazon-bedrock/"&gt;PartyRock&lt;/a&gt; is announced on 16th November, as an Amazon BedRock Playground. You can build your generative AI-based applications without writing any code. It’s cool because people who don’t know writing code can also use generative AI with this.&lt;/p&gt;

&lt;p&gt;For a limited time, we can use PartyRock in a free trial without the need to provide a credit card or sign up for an AWS account, so that we can begin learning fundamental skills without the worry of costs.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5324i3u31t3b971tjfq9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5324i3u31t3b971tjfq9.png" alt="Image description" width="720" height="720"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As a security professional, I’ve decided to use PartyRock for my security interests. I’ve created 5 different applications, let’s see all of them!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🧠Secure Code Studio:&lt;/strong&gt;&lt;br&gt;
Writing codes based on security best practices is an important topic for your static code security. &lt;a href="https://partyrock.aws/u/senayakut/tWw6AtAoP/Secure-Code-Studio"&gt;This app&lt;/a&gt; will generate secure code snippets and validate them against best practices. You need to add programming language and code details. After that application generates code and recommendations for you.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl3q4qd3vtipipq3nxnps.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl3q4qd3vtipipq3nxnps.png" alt="Secure Code Studio" width="720" height="652"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Also, you have already code parts and if you’re not sure if your code is secure or not, you can check from my Secure Code Studio.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9fy71ou2ztoiasqcd5zg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9fy71ou2ztoiasqcd5zg.png" alt="Secure Code Studio" width="720" height="648"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🦸‍♀️Application Security Assistant:&lt;/strong&gt;&lt;br&gt;
We’re developing, maintaining, and using lots of different applications every day. For the application security side, we need to think of lots of details. &lt;a href="https://partyrock.aws/u/senayakut/E7mP5vnq5/Application-Security-Assistant"&gt;This assistant&lt;/a&gt; allows you to discuss application security with an AI. Provide details in the input below, and the assistant will analyze and make recommendations. Provide details in the input below, and the assistant will analyze and make recommendations. If you want, you can chat and get details about your environment. For example, I asked for vulnerability management for my mobile applications and the assistant sent me the recommendations, and example tools that I can use.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcwwzg141r9fr17bow42d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcwwzg141r9fr17bow42d.png" alt="Application Security Assistant" width="720" height="444"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🏃‍♂️Cloud Security Coach:&lt;/strong&gt;&lt;br&gt;
In this application, you will meet your personal cloud security mentor! You can ask whatever you want related to cloud security for different cloud providers. I think it can be important in your daily work or certificate exams as a quick reminder.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fheddy5yxbrwek3ivx2a8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fheddy5yxbrwek3ivx2a8.png" alt="Cloud Security Coach" width="720" height="555"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;👩🏻‍💼Cloud Security Interview Assistant:&lt;/strong&gt;&lt;br&gt;
Before your cloud security-related interviews, &lt;a href="https://partyrock.aws/u/senayakut/iRpDkR16B/Cloud-Security-Interview-Assistant"&gt;this cool interviewer&lt;/a&gt; helps you with all processes. You can chat with the AI according to the questions. Also, it may help you interview in English.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fngte6670hbkeqgyuq604.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fngte6670hbkeqgyuq604.png" alt="Cloud Security Interview Assistant" width="720" height="246"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;☄️IconGen: Security-themed Icon Generator for Blogs:&lt;/strong&gt;&lt;br&gt;
When I write a blog, I struggle to choose a unique icon according to my blog topics. &lt;a href="https://partyrock.aws/u/senayakut/C9ihqPSN8/IconGen%3A-Security-themed-Icon-Generator-for-Blogs"&gt;This icon generator&lt;/a&gt; will help us create custom icons for our security blog posts and articles. Just enter some keywords below and it will generate a relevant icon image.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmvv7mf89wwb0vmioc5xn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmvv7mf89wwb0vmioc5xn.png" alt="IconGen: Security-themed Icon Generator for Blogs&amp;lt;br&amp;gt;
" width="720" height="406"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thanks for reading! Stay safe in the cloud! 🌩️&lt;/p&gt;

</description>
      <category>aws</category>
      <category>ai</category>
      <category>cloud</category>
      <category>security</category>
    </item>
    <item>
      <title>Understand Amazon GuardDuty Findings</title>
      <dc:creator>Sena Yakut</dc:creator>
      <pubDate>Wed, 01 Nov 2023 07:59:00 +0000</pubDate>
      <link>https://dev.to/aws-builders/understand-amazon-guardduty-findings-4po9</link>
      <guid>https://dev.to/aws-builders/understand-amazon-guardduty-findings-4po9</guid>
      <description>&lt;p&gt;Amazon GuardDuty is a threat detection service that continuously monitors our AWS accounts and environments for malicious activity and delivers all details. When you create an AWS account, it is strongly recommended to enable this cool service. It’s very easy to enable and use. In this blog, after we have enabled Amazon GuardDuty, we will discuss what we should do with the findings and how we know we’re in danger. Let’s start together!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1) Create alarms for the findings:&lt;/strong&gt; If you’re enabled Amazon GuardDuty, it does not send you the findings alerts automatically. You need to implement a flow for your workload. You can use CloudWatch alarms or 3rd party solutions for this. It’s very important to do this, you cannot monitor GuardDuty findings every minute of every day, it’s impossible. You can see the instructions here.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftulz1b8x99gs8h56j0cj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftulz1b8x99gs8h56j0cj.png" alt="Create alarms for the findings" width="136" height="136"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2) Prioritize with the severity:&lt;/strong&gt; GuardDuty has default severity for every finding. But it can be different for your environment. You need to understand the findings and impact clearly and prioritize for yourself. There are some examples of it:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;- Policy: IAMUser/RootCredentialUsage:&lt;/em&gt; This finding’s default severity is low. But if it’s not expected from your side, it can be very critical for you. Your root credentials can be compromised and you need to take action about it. We still need to prioritize this finding from our perspective.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;- Exfiltration: S3/AnomalousBehavior:&lt;/em&gt; This finding’s default severity is high. For this, you need to analyze the S3 bucket details. Does it have the important objects or not? Test or prod environment? Who can access this bucket normally? What is the anomalous behavior? Do we expect this? After answering them, maybe you can decrease the severity of the finding.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3) Check the actor and action:&lt;/strong&gt; The actor, included in GuardDuty details, means the one carrying out suspicious activity. You should check and verify the actor's details. We need to know who did what and when it happened. For example, there is an IP that uses aws-cli and GetObject operation to our S3 bucket.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3muro0rmcj3lx8rowwo7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3muro0rmcj3lx8rowwo7.png" alt="Example finding from GuardDuty" width="510" height="716"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We need to check the IP's reputation and whether malware activities are reported or not from this IP. You can use &lt;a href="https://www.virustotal.com/gui/home/upload"&gt;VirusTotal&lt;/a&gt; and &lt;a href="https://socradar.io/labs/ipreputation/"&gt;other solutions&lt;/a&gt; for this.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9403mhu8gyuo8aso6hay.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9403mhu8gyuo8aso6hay.png" alt="VirusTotal IP check example" width="720" height="298"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you want, you can automate this check with the APIs of VirusTotal and send notifications to yourself if the IPs are malwared. You can also automate the blocking process of these IPs from your using AWS resources such as NACLs, bucket policies, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4) Control the resource logs:&lt;/strong&gt; After checking action and actor, checking your resource logs can be very helpful in detecting some details about the threat. For example, let’s assume you have a Lambda service that accesses your S3 bucket, and the finding is related to that bucket. If you’re logging some details about the incoming requests, you can get them from CloudWatch and analyze them. Also, if you have enabled the VPC logs, ELB, or S3 access logs, you can also get details from them, which operations are blocked from the suspicious IP, which operations were rejected or allowed what endpoints were called, etc. We can clearly say logging is a serious thing for your security, in many ways.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgpdu9m3lm9r5c0ybaz4w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgpdu9m3lm9r5c0ybaz4w.png" alt="Control the resource logs" width="214" height="214"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5) Check your activities:&lt;/strong&gt; It’s important to know what happens in your environment. Maybe one of your team members login the AWS account from vacation and GuardDuty detected this IP as an anomaly. Or maybe you have a test bucket that only your intern can access and she tries something and GuardDuty detects the different API calls as an anomaly, again. Before you panic, communicate with your team members. Visibility is everything.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6) Start malware scan:&lt;/strong&gt; GuardDuty automatically starts a malware scan after generating a finding indicative of malware in your EC2 instance or a container workload. Also, you can start a malware scan if you suspect something or just to be sure. You can use your EC2 instance ARN for this.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuva5wycjrz5rasxg5dvm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuva5wycjrz5rasxg5dvm.png" alt="On-demand malware scanning" width="720" height="197"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If the malware is detected, it’s important to get a snapshot of the resource to analyze. You should enable this option if you’re not enabled yet:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fazfgvbuh0bb6e9qosepm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fazfgvbuh0bb6e9qosepm.png" alt="Snapshot retains the malware is detected" width="720" height="160"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;7) Get an action:&lt;/strong&gt; If you complete all the steps and there is a real threat, please get an action. Every resource has different actionable points, you need to check all of them. If this is an expected behavior in your environment, you can archive the findings and sleep well.&lt;/p&gt;

&lt;p&gt;Thanks for reading! Stay safe in the cloud! 🦸🏻‍♀️&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>devops</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Your Daily CVE Reminder 🦸🏻‍♀️</title>
      <dc:creator>Sena Yakut</dc:creator>
      <pubDate>Sat, 14 Oct 2023 07:17:14 +0000</pubDate>
      <link>https://dev.to/aws-builders/your-daily-cve-reminder-cpn</link>
      <guid>https://dev.to/aws-builders/your-daily-cve-reminder-cpn</guid>
      <description>&lt;p&gt;&lt;a href="https://www.redhat.com/en/topics/security/what-is-cve"&gt;Common Vulnerabilities and Exposures (CVE)&lt;/a&gt; lists publicly disclosed security vulnerabilities and exposures. Every day, there are lots of vulnerabilities published and it’s hard to track all of them. We need to know what the critical/high ones are, whether are we affected, what should we do, etc. To achieve this, we will construct a daily reminder mechanism for critical and high CVEs using Slack and AWS Serverless technologies. If you’re using Slack I highly recommend integrating this as soon as possible. If you’re not, you can update the code easily with other notification channels, still highly recommended. You can get all the code from &lt;a href="https://github.com/senaykt/CVE-Daily-Reminder"&gt;here&lt;/a&gt;. Let’s start together!&lt;/p&gt;

&lt;p&gt;🫀 AWS Services &amp;amp; Technologies that we’ve used:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AWS CDK&lt;/li&gt;
&lt;li&gt;AWS Lambda&lt;/li&gt;
&lt;li&gt;Amazon EventBridge&lt;/li&gt;
&lt;li&gt;Slack Webhook&lt;/li&gt;
&lt;li&gt;NIST Vulnerability API, you can reach from &lt;a href="https://nvd.nist.gov/developers/vulnerabilities"&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg8pan572mbqn3cef6zmj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg8pan572mbqn3cef6zmj.png" alt="Image description" width="800" height="414"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;👩🏻‍💻 In our CDK code, I want to explain some parts that can you understand and update easily. In lib/cve-daily-reminder-lambda.ts we’re creating Lambda function and EventBridge rule. I set the reminder schedule as every day at 8 AM with UTC+3. If you want to change, you need to do this from this code. Also, you need to add your Slack Webhook URL in there. If you don’t know how to generate your webhook URL, you can check here.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import {Stack, StackProps, Duration} from 'aws-cdk-lib';
import * as lambda from 'aws-cdk-lib/aws-lambda';
import { Construct } from 'constructs';
import * as events from 'aws-cdk-lib/aws-events';
import * as targets from 'aws-cdk-lib/aws-events-targets';

export class CveDailyReminder extends Stack {

  constructor(scope: Construct, id: string, props?: StackProps) {
    super(scope, id);

    const myLambda = new lambda.Function(this, 'LambdaFunction', {

      environment: {
        SLACK_WEBHOOK_PATH: '',  //add your SLACK_WEBHOOK_PATH here.
      },
      runtime: lambda.Runtime.NODEJS_LATEST, 
      code: lambda.Code.fromAsset('lib/lambda'),  // directory containing your Lambda code
      handler: 'index.handler',
      timeout: Duration.minutes(15) 
    });


    const rule = new events.Rule(this, 'Rule', {
      schedule: events.Schedule.cron({ 
        // Scheduled to run every day at 8 AM Turkey time (UTC+3)
        // Note: CloudWatch cron uses UTC time
        minute: '0',
        hour: '5', // 5 AM UTC is equivalent to 8 AM Turkey time (UTC+3)
        day: '*',
        month: '*',
        year: '*',
      }),
    });

    // Add the Lambda function as the rule's target
    rule.addTarget(new targets.LambdaFunction(myLambda));


  }
  }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In our Lambda code logic, we will only get Critical and High CVEs for now. If you want you can customize the logic and get all of them. Lambda source code in lambda/index.mjs file:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;      if (jsonData.vulnerabilities &amp;amp;&amp;amp; Array.isArray(jsonData.vulnerabilities)) {
          const extractedData = jsonData.vulnerabilities.map(cveObj =&amp;gt; {
            const { id, vulnStatus, descriptions, references, metrics } = cveObj.cve;
            const description = descriptions.find(desc =&amp;gt; desc.lang === "en")?.value || 'Description not available';
            const baseScore = metrics?.cvssMetricV31?.[0]?.cvssData?.baseScore;
            const baseSeverity = metrics?.cvssMetricV31?.[0]?.cvssData?.baseSeverity;
            if (baseScore &amp;amp;&amp;amp; baseSeverity) {
              return {
                cveId: id,
                vulnStatus: vulnStatus,
                description: description,
                baseScore: baseScore,
                baseSeverity: baseSeverity,
                references: references.map(ref =&amp;gt; ref.url),
              };

            }
            return null;
          }).filter(item =&amp;gt; item);
          const highAndCritical = extractedData.filter(item =&amp;gt;
            item.baseSeverity === 'HIGH' || item.baseSeverity === 'CRITICAL');

          highAndCritical.forEach(item =&amp;gt; {

            let text = '';
            const firstSentence = getFirstSentence(item.description);
            text += `:large_red_square: *CVE ID*: ${item.cveId}\n*Base Score*: ${item.baseScore}\n*Base Severity*: ${item.baseSeverity}\n*Description*: ${firstSentence}\n*References*: ${item.references.join(', ').substring(0, 3000)}\n\n`;

            sendToSlack(text);

          });
        }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Notes for updates in Lambda: Slack webhooks are expecting a JSON type that you need to send. If you don’t send this, you will get errors. You can get all the details from there.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;After deploying the solution with AWS CDK, you can get daily CVEs and details in your Slack channel successfully.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhq60aih3lfgk0j329m3c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhq60aih3lfgk0j329m3c.png" alt="Daily CVEs in Slack Channel" width="800" height="349"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We need to review all of them daily. If our systems are affected, we need to take action about it. Stay safe! 🤞&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>devops</category>
      <category>vulnerabilities</category>
    </item>
    <item>
      <title>Understanding Container Security</title>
      <dc:creator>Sena Yakut</dc:creator>
      <pubDate>Fri, 21 Jul 2023 06:35:16 +0000</pubDate>
      <link>https://dev.to/aws-builders/understanding-container-security-b8l</link>
      <guid>https://dev.to/aws-builders/understanding-container-security-b8l</guid>
      <description>&lt;p&gt;Containerized architectures are one of the most popular technologies for developers. There are many advantages to migrating to the containers, I think the most important advantage is flexibility. You can build your Docker images and containers only once, and deploy wherever you want. In addition to this advantage, there are also lots of security challenges. Many attack surfaces surround your container environment if your container structure has lots of security misconfiguration and vulnerabilities. While being very flexible, you may encounter attackers and lots of exploit scenarios in your containers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1eeaf07j960o86rwxfkw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1eeaf07j960o86rwxfkw.png" alt="Image description" width="239" height="239"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Container security has lots of aspects. As security professionals, these are our responsibilities in a container environment:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Secure your codebase&lt;/li&gt;
&lt;li&gt;Secure your app&lt;/li&gt;
&lt;li&gt;Secure all libraries that you’ve used&lt;/li&gt;
&lt;li&gt;Secure your network/communication&lt;/li&gt;
&lt;li&gt;Secure your CI/CD processes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In this blog, we will talk about container security challenges and what should you do about them. Let’s start together! ✍️&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Container Security Challenges&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1) Vulnerability Overload 🥴:&lt;/strong&gt; There are lots of vulnerabilities in different layers in a container image or containers in runtime. Developers are confused about the prioritization of these vulnerabilities, how to fix them without any functional errors, and who is responsible for remediating them. Prioritization is important because if you have 100 critical vulnerabilities in a container cluster, you need to know which are the most critical ones. At this point, analyzing the vulnerability scan results is an important task for you.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9cpt7sbb0jhb9ddrh193.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9cpt7sbb0jhb9ddrh193.png" alt="Container Vulnerability Overload" width="222" height="415"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2) Container security is challenging 😮:&lt;/strong&gt; There are a lot of layers and aspects in a container such as networking, codebase, and libraries that are used, etc. We need to know all details about all of these topics and you need to get action about them. Also, if there is a vulnerability in a container system, you need lots of information about some questions like: “What is the exact vulnerability scenario in there?”, and “How is this vulnerability affect our system?”.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcc1n3spy316fr8wnzx12.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcc1n3spy316fr8wnzx12.png" alt="Understanding Container Security" width="245" height="245"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3) Difficulty in Integration 🧗🏻‍♀️:&lt;/strong&gt; There are lots of scanning, vulnerability management, and alerting tools about container security. In your company, you need to decide what is the best tool for managing your container environment. In addition to this, you need to think about our CI/CD pipeline and at which point you need to integrate these tools in order to be protected.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fby3avbs2wtnnx65lo0l7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fby3avbs2wtnnx65lo0l7.png" alt="Difficulty in Integration" width="413" height="275"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;✨ Security Points of Containerized Design ✨&lt;/strong&gt;&lt;br&gt;
As we mentioned before, you should think of every potential attack vector at each stage of a container’s lifecycle.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq4rah6v30miix562pr7b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq4rah6v30miix562pr7b.png" alt="Container Lifecycle Management" width="717" height="383"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1) 🤔Vulnerable Application Code:&lt;/strong&gt; Lots of code parts are added to a container environment in your daily work. You’re using lots of libraries, third-party codes, and our business logic codes. You need to be careful about secure code best practices when you’re writing your application code.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You need to follow OWASP guides about secure code design.&lt;/li&gt;
&lt;li&gt;You need to scan your code with SAST tools like SonarQube, Veracode, etc. These tools help to understand the security of your code.&lt;/li&gt;
&lt;li&gt;Scanning your container images for vulnerabilities is a good approach. But this scanning is not one time job, it should be done regularly (weekly, monthly, etc.) You need to follow vulnerability reports and fix all of the vulnerabilities as soon as possible. I recommend some open-source tools that could be useful: &lt;a href="https://trivy.dev/"&gt;Trivy&lt;/a&gt;, &lt;a href="https://github.com/docker/docker-bench-security"&gt;Docker-Bench&lt;/a&gt;, &lt;a href="https://github.com/anchore/grype"&gt;Grype&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fag32lb7xu398xcbu7fnf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fag32lb7xu398xcbu7fnf.png" alt="Image description" width="413" height="309"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2) 🤔 Badly Configured Container Images &amp;amp; Containers:&lt;/strong&gt; If an attacker is able to modify the Dockerfile, it’s possible for them to take malicious actions such as adding malware or crypto-mining software into the image, accessing build secrets and privilege escalation, etc. These are very dangerous activities for container systems. To prevent this, we need to write our Dockerfiles with security best practices. Here are some best practices that I’ve recommended:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You should use an image from a trusted registry. Please do not use any base images that are not verified, or built by someone that you do not know. Attackers love this way to catch you.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv6cen1v18rh8gmnbu7wo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv6cen1v18rh8gmnbu7wo.png" alt="Image description" width="181" height="181"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You should use smaller base images for your infrastructure. When you use the smaller one, you have less unnecessary code and a smaller attack surface.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Folj7kl5imvcntoocx5hu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Folj7kl5imvcntoocx5hu.png" alt="Image description" width="167" height="167"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Please do not be root and run any code with root in your Dockerfile. You should always define a user with at least a privilege approach. Root users are always critical to us.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Remote code execution scenarios are critical for containers. You should check your RUN command to prevent running the codes that you don’t have or attackers can. You should audit your RUN command logs regularly. Also, access control is critical at this point. You need to clarify and define which users in your system have the change RUN command.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F02sz1wa5v5dmapg4m2n0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F02sz1wa5v5dmapg4m2n0.png" alt="Image description" width="190" height="188"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For your Dockerfiles, you can also scan them. There are lots of tools that can check your Dockerfiles. They will validate if Dockerfile is compliant with Docker best practices such as not using root user, making sure a health check exists, and not exposing the SSH port. You can use &lt;a href="https://docs.snyk.io/scan-containers/scan-your-dockerfile"&gt;Snyk &lt;/a&gt;and &lt;a href="https://www.checkov.io/"&gt;Checkov&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2w24w4xoisf5c0x6t0kj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2w24w4xoisf5c0x6t0kj.png" alt="Image description" width="720" height="561"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3) 🤔Exposed Secrets:&lt;/strong&gt; Exposed secrets are a nightmare for us. As in every environment, we’ve mentioned “Please do not hardcode your credentials.” You should not store sensitive data in different layers in your containers. You think if you’re using the remove command everything is fine, but believe me, it’s not. Your credentials are still in layers and docker history and attackers can get these credentials by reversing your container image. To prevent exposure, you should rotate &amp;amp; encrypt your secrets regularly, not store them in .env files and you can use secret management tools like &lt;a href="https://www.hashicorp.com/resources/securing-container-secrets-vault"&gt;Vault&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4) 🤔Image Storage Security:&lt;/strong&gt; We’re using AWS ECR, DockerHub as image storage. While you’re using and pushing your images, you need to be sure these are not publicly accessible. Attackers love founding publicly accessible Docker images, reversing them, and getting all your system details, credentials, etc. Also, to ensure your docker data integrity and docker content trust, your Docker images should be signed and verified on runtime. We don’t want to use images that attackers changed and pushed our docker storage area.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxqd9cu5x3wfp0vkhnmqk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxqd9cu5x3wfp0vkhnmqk.png" alt="Image description" width="203" height="198"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Access control is a critical topic there. You need to decide which users in your company should access which Docker images with which access roles. You should check your image tags and YAML files before running them in your production cluster. You should be aware of everything about your Docker images.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7u5vjmuobcpqsf71zt1d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7u5vjmuobcpqsf71zt1d.png" alt="Image description" width="269" height="161"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5) 🤔Insecure Networking:&lt;/strong&gt; Every external attack reaches your container deployment across a network area. So you need to implement a strong secure network infrastructure for your containers. You need to implement a VPC, default deny mechanism on NACLs, security groups, and firewalls. You should restrict your container ports wherever possible. For network traffic, you always think of using Web Application Firewall (WAF) solutions. WAF helps to prevent lots of attacks such as RCE, SQL injection in addition to network layer attacks. And as you know, you need to always use TLS for your encrypted traffic. Attackers love HTTP, not HTTPS.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fywewyn1ty46ygtzn838u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fywewyn1ty46ygtzn838u.png" alt="Image description" width="152" height="153"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thanks for reading! Stay safe in containers! 👻&lt;/p&gt;

</description>
      <category>aws</category>
      <category>devops</category>
      <category>security</category>
      <category>containers</category>
    </item>
    <item>
      <title>Remotely Connect to Your Instances without a Public IP Address</title>
      <dc:creator>Sena Yakut</dc:creator>
      <pubDate>Wed, 28 Jun 2023 08:06:10 +0000</pubDate>
      <link>https://dev.to/aws-builders/remotely-connect-to-your-instances-without-a-public-ip-address-13id</link>
      <guid>https://dev.to/aws-builders/remotely-connect-to-your-instances-without-a-public-ip-address-13id</guid>
      <description>&lt;p&gt;We’re using bastion hosts to connect our EC2 instances via SSH or RDP for years. Using these hosts causes operational challenges (updates, additional configurations, audits, etc.) and additional costs. In addition to hosts, AWS has two different solutions to connect your instances. The first solution is AWS Instance Connect, but we need a public IP address to use it. The second solution is System Manager, but we need agent-based connectivity.&lt;/p&gt;

&lt;p&gt;🌹 From now on, we’re able to use EC2 Instance Connect for all remote connections without public Ips, Internet Gateways, and bastion hosts.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe83gu9070ii35gcpzf9o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe83gu9070ii35gcpzf9o.png" alt="[EIC Endpoint overview](https://aws.amazon.com/blogs/compute/secure-connectivity-from-public-to-private-introducing-ec2-instance-connect-endpoint-june-13-2023/)"&gt;&lt;/a&gt;&lt;br&gt;
EC2 Instance Connect combines authorization with IAM restrictions and network controls with security group rules. This feature is also auditable with AWS CloudTrail. Today, we will configure and understand the EC2 Instance Connect Endpoint step by step. Let’s start together! ⛅️&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: IAM Permissions to use EC2 Instance Connect Endpoint&lt;/strong&gt;&lt;br&gt;
First of all, to create an EC2 Instance Connect Endpoint, you need these permissions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ec2:CreateInstanceConnectEndpoint&lt;/li&gt;
&lt;li&gt;ec2:CreateNetworkInterface&lt;/li&gt;
&lt;li&gt;ec2:CreateTags&lt;/li&gt;
&lt;li&gt;iam:CreateServiceLinkedRole&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can do some restrictions about EC2 Instance Connect remote port, your EC2 private IP address, or tunnel duration that we’ve built between EC2 Instance Connect and your instance. You can see all example policies and scenarios that are related to IAM from &lt;a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/permissions-for-ec2-instance-connect-endpoint.html" rel="noopener noreferrer"&gt;here.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Security Groups Configurations&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;For the EC2 Instance Connect Endpoint, AWS recommends outbound rule should allow outbound traffic to the specified destination (specific security group of your EC2 instances).&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvn0l973o8moksxeu5y1w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvn0l973o8moksxeu5y1w.png" alt="Outbound rules for EIC"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;For your resources, if the preservation of client IP is set to false in the EIC configuration, you should allow inbound traffic from the EIC security group and inbound traffic from the VPC CIDR. For other preservation issues, you can check this documentation.&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsdevte16j390it617b9r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsdevte16j390it617b9r.png" alt="Inbound rules for EC2"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Create EC2 Instance Connect Endpoint&lt;/strong&gt;&lt;br&gt;
For creation, you should VPC à Endpoints and select “Create Endpoint”. Your endpoint and resources should be in the same VPC.&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiozu311ctuy8wjm1526t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiozu311ctuy8wjm1526t.png" alt="Create EC2 Instance Connect Endpoint"&gt;&lt;/a&gt;&lt;br&gt;
You should select private subnet and the security group that you’ve created. If you select subnet in different availability zone from your resources, additional data transfer costs can occur.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgz6pyg256cj1n49l5d6z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgz6pyg256cj1n49l5d6z.png" alt="Security Group of EIC"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After that, you need to wait until the status is “Available”. You can create 1 EC2 Instance Connect Endpoint per VPC &amp;amp; per subnet.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3jyfgj9yvqnd1lae8jbg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3jyfgj9yvqnd1lae8jbg.png" alt="EIC Status"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Connect your EC2 Instance&lt;/strong&gt;&lt;br&gt;
From AWS Console, you need to select EC2 Instance Connect Endpoint.&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr2robzzv4ysful98zgqx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr2robzzv4ysful98zgqx.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We got a successful connection!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1qz1sl96viypxvxywnie.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1qz1sl96viypxvxywnie.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;From our client, you can use this command:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ssh -i ‘key_file’ ubuntu@instance_id -o ProxyCommand=’aws ec2-instance-connect open-tunnel — instance-id instance_id’&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftccu02niimqd5b634nok.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftccu02niimqd5b634nok.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We got successful connection again!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🫠 Advantages of using EC2 Instance Connect Endpoint:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;We do not need agent configuration.&lt;/li&gt;
&lt;li&gt;We do not need publicly accessible resources.&lt;/li&gt;
&lt;li&gt;We can audit all connections via AWS CloudTrail.&lt;/li&gt;
&lt;li&gt;No additional cost, we only pay for the data transfer.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thanks for reading! Stay safe in the cloud! 👻&lt;/p&gt;

</description>
      <category>aws</category>
      <category>devops</category>
      <category>security</category>
    </item>
    <item>
      <title>Use Amazon CodeWhisperer for Your AWS Security</title>
      <dc:creator>Sena Yakut</dc:creator>
      <pubDate>Sun, 16 Apr 2023 17:52:36 +0000</pubDate>
      <link>https://dev.to/aws-builders/use-amazon-codewhisperer-for-your-aws-security-2noh</link>
      <guid>https://dev.to/aws-builders/use-amazon-codewhisperer-for-your-aws-security-2noh</guid>
      <description>&lt;p&gt;Amazon CodeWhisperer is an AI code service that provides real-time code suggestions in your Integrated Development Environment (IDE) to help you quickly write your code. &lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/04/amazon-codewhisperer-generally-available/"&gt;On April 13th&lt;/a&gt;, Amazon CodeWhisperer is generally available. There are two tiers, Individual and Professional. For the Individual tier, it’s free to use 🧐, and easy to integrate and I recommend enabling this cool service in your IDE if you did not yet. If you’re using the Individual tier, you can get code recommendations, reference tracking, and security scans for your project. You can use Amazon CodeWhisperer with Python, Java, JavaScript, TypeScript, C#, Go, Rust, Kotlin, Scala, Ruby, PHP, SQL, C, C++, and Shell Scripting.&lt;/p&gt;

&lt;p&gt;Today, I will show you some code generations example to secure your AWS account easily with this cool code generator. Let’s start together!😵&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Setup Your Account&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1)&lt;/strong&gt; I’ll use Visual Studio Code in this blog however, Amazon CodeWhisperer can be integrated with JetBrains, AWS Cloud9, and &lt;a href="https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"&gt;AWS Lambda&lt;/a&gt;. If you don’t have AWS Toolkit in your VSCode, you need to install it in the extensions part. If you already have, you need to be sure it’s up to date.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftc6kad32kj4h0bfi8o3j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftc6kad32kj4h0bfi8o3j.png" alt="AWS Toolkit Installation" width="720" height="331"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2)&lt;/strong&gt; After that, I’m choosing AWS Builder ID connection, it’s also free and you do not need to have an AWS account for this.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fih62t2oxvk3sxbggjyum.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fih62t2oxvk3sxbggjyum.png" alt="AWS Builder ID Connection" width="720" height="348"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3)&lt;/strong&gt; We will get authorize request panel.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbrjjhkqbigg2jc7j7m9l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbrjjhkqbigg2jc7j7m9l.png" alt="Authorize Request Panel" width="557" height="453"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4)&lt;/strong&gt; And we need to accept AWS Toolkit for VSCode to access our data!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Famos099uj6dgxs45ozgq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Famos099uj6dgxs45ozgq.png" alt="AWS Toolkit for VSCode" width="720" height="423"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwlum4kr1kebf504sqv64.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwlum4kr1kebf504sqv64.png" alt="AWS Toolkit for VSCode" width="511" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After all steps, you can use Amazon CodeWhisperer suggestions in your IDE. 👻&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use CodeWhisperer as AWS CIS Recommender&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The CIS AWS Foundations Benchmark provides lots of security configurations and best practices for our AWS environment. It’s important to know the issue and remediate and automate remediation related to CIS Benchmarks. There are lots of tools, integrations, and scripts for CIS Benchmark and you can use that. But if you do not want to use this, you already do not know the processes on this and you want to get all the control, you can write your own CIS Benchmark controller. For this process, we’re using Amazon CodeWhisperer.&lt;/p&gt;

&lt;p&gt;I’ll choose some random controls from CIS Benchmark v1.5.0. You can see all controls from &lt;a href="https://www.cisecurity.org/benchmark/amazon_web_services"&gt;here.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1) Ensure multi-factor authentication (MFA) is enabled for all IAM users&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;MFA is important for your all accounts. We also check this in our AWS Account. When I say something about this process to Amazon CodeWhisperer, it generates for me.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwqwzjqp6fhcl0ss9hyp9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwqwzjqp6fhcl0ss9hyp9.png" alt="Ensure multi-factor authentication (MFA) is enabled for all IAM users" width="720" height="216"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2) You need to check that the AWS IAM user key age is greater than 45 days or not&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It is recommended that all credentials that have been unused for 45 or greater days be deactivated or removed. They can be used for bad activities in your account. Let’s try this control.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F30o1jrbkzqu5absgr9mb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F30o1jrbkzqu5absgr9mb.png" alt="You need to check that the AWS IAM user key age is greater than 45 days or not" width="720" height="282"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3) MFA should be enabled for the ‘root’ user account&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The ‘root’ user account is the most privileged user in an AWS account. It’s so important to enable MFA in this account. I’m writing to VSCode from the AWS CIS Benchmark document.&lt;/p&gt;

&lt;p&gt;This is from the CIS Benchmark:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjw7emrylre9erq00s97a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjw7emrylre9erq00s97a.png" alt="MFA should be enabled for the ‘root’ user account — CIS Benchmark" width="468" height="372"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And this is from us:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8gnv1wtnzo291zvut8ps.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8gnv1wtnzo291zvut8ps.png" alt="MFA should be enabled for the ‘root’ user account — CodeWhisperer" width="720" height="168"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4) Ensure AWS Config is enabled in all regions&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AWS Config is a web service that performs configuration management and logging changes. It’s recommended to enable it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsnuans7jral3iksfffuy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsnuans7jral3iksfffuy.png" alt="Ensure AWS Config is enabled in all regions" width="720" height="227"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5) Ensure CloudTrail logs are encrypted at rest using KMS CMKs.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We love encryption in AWS. It is recommended that CloudTrail be configured to use SSE-KMS. I’m converting AWS CIS Benchmark controls to a sentence and explain to AWS CodeWhisperer as much as I can.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv5mgjmzdsi17x2mtiyog.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv5mgjmzdsi17x2mtiyog.png" alt="Ensure CloudTrail logs are encrypted at rest using KMS CMKs" width="720" height="225"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After all of that, let’s run our functions!🙀&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fobba2d0j0rqpum82eeck.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fobba2d0j0rqpum82eeck.png" alt="Results" width="720" height="350"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use CodeWhisperer as Code Scanner&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Static code scanning is important in your CI/CD pipeline and DevSecOps processes. After the security scanning is finished with CodeWhisperer, security issues in the scanned files are highlighted in the problems panel. Let’s try this with a vulnerable command injection attack code scenario from &lt;a href="https://rules.sonarsource.com/python/type/Vulnerability/RSPEC-2076"&gt;SonarQube Library.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz747td4wnr0l9hct18fp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz747td4wnr0l9hct18fp.png" alt="SonarQube Library Example" width="720" height="284"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We can easily see this issue has been found by AWS CodeWhisperer.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh8lsnbznrjai4wcgw96n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh8lsnbznrjai4wcgw96n.png" alt="AWS CodeWhisperer — OS Command Injection" width="720" height="254"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I strongly recommended using the security scan module for your IDE. It finds your security vulnerabilities before you go to 🧠production🧠.&lt;/p&gt;

&lt;p&gt;Thanks for reading! Stay safe in the cloud! 🤞 ⛅️&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>devops</category>
    </item>
    <item>
      <title>Hacking AWS Account via AWS Lambda SSRF</title>
      <dc:creator>Sena Yakut</dc:creator>
      <pubDate>Wed, 29 Mar 2023 03:27:37 +0000</pubDate>
      <link>https://dev.to/aws-builders/hacking-aws-account-via-aws-lambda-ssrf-nof</link>
      <guid>https://dev.to/aws-builders/hacking-aws-account-via-aws-lambda-ssrf-nof</guid>
      <description>&lt;p&gt;Server-side request forgery (SSRF) attack is used for abusing functionality on the server to read or update internal resources. The main idea behind an SSRF attack is to manipulate the input parameters of an application that interact with external systems, such as URLs, IP addresses, or file paths. By injecting a special URL that is important for internal systems, an attacker can force an application to access an internal resource that is not intended to be exposed. Besides SSRF is very dangerous for traditional web applications, it’s also a threat for cloud resources. Today, we will see an example SSRF scenario on AWS Lambda and how it can be dangerous for your AWS environment. Let’s start together!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AWS Lambda SSRF Scenario:&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;1-)&lt;/strong&gt; Let’s assume that we’ve a sample webpage that we will upload our contents to apply a job opportunity.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhzoufgmgg4b0ctk7kkd9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhzoufgmgg4b0ctk7kkd9.png" alt="Job Opportunity Scenario"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2-)&lt;/strong&gt; We need to review the source code of the page. It includes a request to API Gateway endpoint to upload our CV.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwxstebultnnbwd6rsj38.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwxstebultnnbwd6rsj38.png" alt="API Gateway Details"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3-)&lt;/strong&gt; Let’s try to call the same API endpoint on Postman or Burp Suite. This is an expected usage of the API. But we think there is a problem to read the pdf files content because body message is not completed. But we assume the cv file is tried to read (this is a file operation). So, we can try SSRF and get some data if we are lucky. But how can we do this on AWS API Gateway / AWS Lambda?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff5rtmed26e4fawquh4l3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff5rtmed26e4fawquh4l3.png" alt="API Endpoint on Postman"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4-)&lt;/strong&gt; In AWS Lambda, AWS credentials are stored in environment variables. To get them, you need to access a path like &lt;strong&gt;file:///proc/self/environ&lt;/strong&gt;. We can try:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1e8t4j8lhsahz4il5yav.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1e8t4j8lhsahz4il5yav.png" alt="proc/self/environ"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After we’ve tried with /proc/self/environ, we get lots of details!! Let’s analyze the response.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc65226xnxmekkv5h5wsk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc65226xnxmekkv5h5wsk.png" alt="/proc/self/environ"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5-)&lt;/strong&gt; There are lots of AWS credentials. As you see, we get DB username, password, and hostname but we have also AWS credentials. Let’s extract them and use in an AWS profile.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fohab1c7sbfwzui1ntdvz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fohab1c7sbfwzui1ntdvz.png" alt="API Gateway Response with AWS Credentials"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6-)&lt;/strong&gt; We’ve created the AWS profile.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvgvat6v86nnrvn1rsj9y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvgvat6v86nnrvn1rsj9y.png" alt="Creating AWS Profile via “Pentest” name"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;7-)&lt;/strong&gt; You need to use get-caller-identity function to return details about the IAM user or role whose credentials are used to call the operation.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

aws sts get-caller-identity — profile &amp;lt;your-profile&amp;gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe84i0vi9c968g0lqni2l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe84i0vi9c968g0lqni2l.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;8-)&lt;/strong&gt; We need to know the policies that are attached to this AWS Lambda role.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

aws iam list-attached-role-policies — role-name &amp;lt;role-name&amp;gt; — profile &amp;lt;your-profile&amp;gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1en01wpuoht7a0tth1co.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1en01wpuoht7a0tth1co.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;9-)&lt;/strong&gt; Yes, we get administrator access! 🤯 We can create an IAM user via AWS CLI.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

aws iam create-user — user-name &amp;lt;username&amp;gt; — profile &amp;lt;your-profile&amp;gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgqoom0q84st8xkjppyhy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgqoom0q84st8xkjppyhy.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;10-)&lt;/strong&gt; You should create login profile with password.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

aws iam create-login-profile — user-name &amp;lt;username&amp;gt; — password &amp;lt;my-password&amp;gt; — profile &amp;lt;your-profile&amp;gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff7igiydcjrrer7pe7ru4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff7igiydcjrrer7pe7ru4.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;11-)&lt;/strong&gt; We need to attach administrator policy to this user.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

aws iam attach-user-policy — policy-arn arn:aws:iam::aws:policy/AdministratorAccess — user-name &amp;lt;username&amp;gt; — profile &amp;lt;your-profile&amp;gt;


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;12-)&lt;/strong&gt; We’ll able to access the account with administrator rights! That’s all! 🤭 🤫&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw1z7s0srqa2u9ytr7fre.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw1z7s0srqa2u9ytr7fre.png" alt="Access the Account with Administrator Rights"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Preventions / Recommendations:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F187cue1ljtewj4g419mn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F187cue1ljtewj4g419mn.png" alt="Preventions / Recommendations SSRF"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Validate every input.&lt;/li&gt;
&lt;li&gt;Always follow at least privilege principle in AWS IAM roles.&lt;/li&gt;
&lt;li&gt;Add authentication &amp;amp; authorization to your public API endpoints.&lt;/li&gt;
&lt;li&gt;Blacklist/Prevent Unused URL Schemas (like file://)&lt;/li&gt;
&lt;li&gt;For other details, please see &lt;a href="https://cheatsheetseries.owasp.org/cheatsheets/Server_Side_Request_Forgery_Prevention_Cheat_Sheet.html" rel="noopener noreferrer"&gt;OWASP Cheat Sheet&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thanks for reading! Stay safe in the cloud! 🤞 ⛅️&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>cloud</category>
      <category>devops</category>
    </item>
    <item>
      <title>Passing AWS Security Specialty Exam — My Tips and Notes</title>
      <dc:creator>Sena Yakut</dc:creator>
      <pubDate>Sun, 05 Feb 2023 17:24:20 +0000</pubDate>
      <link>https://dev.to/aws-builders/passing-aws-security-specialty-exam-my-tips-and-notes-1hik</link>
      <guid>https://dev.to/aws-builders/passing-aws-security-specialty-exam-my-tips-and-notes-1hik</guid>
      <description>&lt;p&gt;I recently passed the AWS Security Specialty exam and want to share my experiences, study resources, and process with you. I hope these tips will help you to pass your exam. Let’s start together!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;This cool exam takes 170 minutes.&lt;/li&gt;
&lt;li&gt;It costs 300 USD. If you have any coupons/vouchers, you can use this.&lt;/li&gt;
&lt;li&gt;The exam includes 65 questions with multiple choice or multiple responses.&lt;/li&gt;
&lt;li&gt;You can attend the exam via Pearson Vue testing center or online proctored.&lt;/li&gt;
&lt;li&gt;AWS recommends five years of IT security experience in designing and implementing security solutions and at least two years of hands-on experience in securing AWS workloads. But this is only a recommendation, not an obligation. You can still prepare for the exam.&lt;/li&gt;
&lt;li&gt;You need to know AWS like a solution architect. So, it’s important to get AWS Solutions Architect certificates before this exam.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Read the AWS Documentation about the Exam&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you decide to take this certificate, you first need to read AWS documentation about the exam. These documents include general information about the exam, its scope, and some sample questions. For sample questions, I solved them on the first day of my study schedule and after that, I also solved them before the exam day. It helps you to understand your progress.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;For the exam guide, you can use &lt;a href="https://d1.awsstatic.com/training-and-certification/docs-security-spec/AWS-Certified-Security-Specialty_Exam-Guide.pdf" rel="noopener noreferrer"&gt;this.&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;For the sample questions, you can use &lt;a href="https://d1.awsstatic.com/training-and-certification/docs-security-spec/AWS-Certified-Security-Speciality_Sample-Questions.pdf" rel="noopener noreferrer"&gt;this.&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In addition to this, it’s important to know “AWS Well-Architected Principles”. It helps us build secure, high-performing, resilient, and efficient infrastructure for our workloads. The security side is important for this exam. You can read the &lt;a href="https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/welcome.html" rel="noopener noreferrer"&gt;security pillar whitepaper.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use AWS Training Module&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.aws.training/" rel="noopener noreferrer"&gt;This module&lt;/a&gt; is so helpful for starting your certification process. This is not for just the Security Specialty, there are lots of training videos, documents, and exams to help your cloud journey or other certifications. The following ones that I’ve used in my process:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://explore.skillbuilder.aws/learn/course/353/the-aws-certification-quiz-show-security-specialty-exam-episode-1" rel="noopener noreferrer"&gt;The AWS Certification Quiz Show: Security — Specialty exam Episode 1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://explore.skillbuilder.aws/learn/course/323/the-aws-certification-quiz-show-security-specialty-exam-episode-2" rel="noopener noreferrer"&gt;The AWS Certification Quiz Show: Security — Specialty exam, Episode 2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://explore.skillbuilder.aws/learn/course/300/the-aws-certification-quiz-show-security-specialty-exam-episode-3" rel="noopener noreferrer"&gt;The AWS Certification Quiz Show: Security — Specialty exam, Episode 3&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://explore.skillbuilder.aws/learn/course/12473/aws-certified-security-specialty-official-practice-question-set-scs-c01-english" rel="noopener noreferrer"&gt;AWS Certified Security — Specialty Official Practice Question Set (SCS-C01 — English)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Also, there are Cloud Quests that help you build practical AWS Cloud skills. I’ve solved the Security and Solution Architect badges, but they require a subscription. You can read more about it &lt;a href="https://aws.amazon.com/training/digital/aws-cloud-quest/" rel="noopener noreferrer"&gt;here.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use Video Resources&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For this exam, there are not so many video resources like full courses. But I can recommend some videos that saved me.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For AWS IAM: &lt;a href="https://www.youtube.com/watch?v=YQsK4MtsELU" rel="noopener noreferrer"&gt;Become an IAM Policy Master in 60 Minutes or Less&lt;/a&gt; (I watched this twice)&lt;/li&gt;
&lt;li&gt;For AWS KMS: &lt;a href="https://www.youtube.com/watch?v=fmqzUCtC6Aw" rel="noopener noreferrer"&gt;AWS #KMS — Key Management Service — Customer Master Key, Data Key, Envelope Encryption&lt;/a&gt; (This is a clear explanation, but you must read new AWS documents. There are some changes in AWS KMS like multi-region support.)&lt;/li&gt;
&lt;li&gt;AWS Well-Architected: &lt;a href="https://www.youtube.com/watch?v=nMxqziAibKk" rel="noopener noreferrer"&gt;AWS re:Invent 2022 — AWS Well-Architected Framework security pillar: Cloud security&lt;/a&gt; (This is from the latest re:Invent)&lt;/li&gt;
&lt;li&gt;AWS Security Reference: &lt;a href="https://www.youtube.com/watch?v=uFrj0jHN848&amp;amp;t=1677s" rel="noopener noreferrer"&gt;AWS re:Invent 2022 — Revitalize your security with the AWS Security Reference Architecture&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Practice with Example Questions&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Practicing is always important. There are lots of questions in different places but I’ve seen there are lots of wrong or old responses (AWS changes lots of services or adds details every year.) So, it’s important to get clear and right exam samples. For me, the most useful ones are AWS training module questions and &lt;a href="https://www.whizlabs.com/aws-certified-security-specialty/" rel="noopener noreferrer"&gt;Whizlabs.&lt;/a&gt; There is a free test if you want to check. Feel free to solve this if you want to decide to buy the tests. If you buy it, there are four full exams with unique exam practice questions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Which AWS Services should You Know Mostly?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is a general and challenging security exam, so you should know all of AWS security services mostly. But from my experience strongly recommend you need to know AWS KMS, AWS IAM, AWS Organizations, and AWS networking and logging and monitoring concepts and services such as AWS CloudTrail, AWS VPC Flow Logs, etc. in all aspects. Before the exam, you need to read all whitepapers about all security services. You can take some small notes to remember anything quickly. And it’s also important to do some practice labs about all of them. It’s more important to practice something than just read it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My Personal Comments &amp;amp; Suggestions for You&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I have other AWS certificates, but I think this is one of the most challenging. I’m working as Cloud Security Engineer, and I know the general cyber security and cloud security concepts since university, but in the exam, there are lots of focused and long questions about AWS security services.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fznnsmdk3m2cf25oerhw6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fznnsmdk3m2cf25oerhw6.png" alt="Image description" width="64" height="64"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Lots of the questions include multiple responses with example scenarios so I think it’s important to use these services in your work or training process. You need to practice with every security service in AWS.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa2y7c1ak00m8mjpy0ou3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa2y7c1ak00m8mjpy0ou3.png" alt="Image description" width="64" height="64"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If you do not know general security concepts, you should learn all of them such as encryption &amp;amp; hashing methods, algorithms, and encryption in transit/rest concepts.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhh2jqb69subo6yd3k56s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhh2jqb69subo6yd3k56s.png" alt="Image description" width="64" height="64"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For the studying process, I strongly recommend solving all test questions again and again. You should ensure to know all the questions in the example exams. I’m not saying memorize everything. You need to know why we select this option. You need to know all concepts.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo8qcxle1abo2stz1w8mj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo8qcxle1abo2stz1w8mj.png" alt="Image description" width="128" height="128"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the exam, always think worst-case scenario. Some questions ask you about “cost optimization or highly available architecture”. But when you’re selecting this, you do not want to be hacked. So please ensure that you select the most secure option with other conditions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqwtqi4oh2p8nm9eq9naa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqwtqi4oh2p8nm9eq9naa.png" alt="Image description" width="64" height="64"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Some questions are more challenging than others. If you do not know anything about these, skip them, and solve questions that you are more confident about. And then, you can come back to these, take a deep breath, and try to understand the case.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy2vgc7r15bm33nooip7y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy2vgc7r15bm33nooip7y.png" alt="Image description" width="64" height="64"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;For selecting the right exam time, you should not choose midnight time because I was very tired and did not sleep well. It was hard to focus on the long questions and scenarios in a situation like this.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgax91d7uo0fnbv74gyxo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgax91d7uo0fnbv74gyxo.png" width="64" height="64"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I hope my advice and recommendations will help you in this exam process.&lt;/p&gt;

&lt;p&gt;Thanks for reading! Stay safe in the cloud! 🤞 ⛅️&lt;/p&gt;





&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
      &lt;div class="c-embed__cover"&gt;
        &lt;a href="https://www.credly.com/badges/c0cd1760-c094-43c2-9cbb-5a5dc00e2de2" class="c-link s:max-w-50 align-middle" rel="noopener noreferrer"&gt;
          &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fimages.credly.com%2Fimages%2F53acdae5-d69f-4dda-b650-d02ed7a50dd7%2Flinkedin_thumb_image.png" height="352" class="m-0" width="672"&gt;
        &lt;/a&gt;
      &lt;/div&gt;
    &lt;div class="c-embed__body"&gt;
      &lt;h2 class="fs-xl lh-tight"&gt;
        &lt;a href="https://www.credly.com/badges/c0cd1760-c094-43c2-9cbb-5a5dc00e2de2" rel="noopener noreferrer" class="c-link"&gt;
          AWS Certified Security – Specialty - Credly
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;p class="truncate-at-3"&gt;
          Earners of this certification have an in-depth understanding of AWS security services and the shared responsibility model (between AWS and the customer). They demonstrated the ability to design, implement, and troubleshoot various security models in the AWS Cloud. Badge owners can leverage various security models for organizations of all sizes.
        &lt;/p&gt;
      &lt;div class="color-secondary fs-s flex items-center"&gt;
        credly.com
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>cryptocurrency</category>
      <category>web3</category>
      <category>blockchain</category>
      <category>writing</category>
    </item>
    <item>
      <title>Your AWS EC2 Has Been Hacked. What Will Happen Now?</title>
      <dc:creator>Sena Yakut</dc:creator>
      <pubDate>Sun, 08 Jan 2023 06:59:12 +0000</pubDate>
      <link>https://dev.to/aws-builders/your-aws-ec2-has-been-hacked-what-will-happen-now-4l8n</link>
      <guid>https://dev.to/aws-builders/your-aws-ec2-has-been-hacked-what-will-happen-now-4l8n</guid>
      <description>&lt;p&gt;Let's assume our worst nightmare occurred: One of the most important production environments that are built on AWS EC2 services was hacked. What are the required steps for returning to your normal application behavior? What needs to be done for your forensic analysis? What steps should be done to not should be repeated? Do you prepare your incident response plan? In this blog, we'll answer these questions. Let's start together!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Preparation&lt;/strong&gt;&lt;br&gt;
This step needs to be considered before the hacking. The preparation step is one of the critical tasks of your cloud security assessment and incident response plan. You need to be sure about your controls are in place that help you in the detection of anomalies within your AWS EC2 environment. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8rqciw08qernpy8ilxzc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8rqciw08qernpy8ilxzc.png" alt="Preparation Step" width="800" height="138"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Some examples of preparation that need to configure:&lt;/li&gt;
&lt;li&gt;Ensure your logging services are enabled on AWS such as CloudTrail, VPC Flow Logs, and AWS ELB Access Logs.&lt;/li&gt;
&lt;li&gt;Always think of encryption in rest and encryption in transit. Use AWS KMS encryption wherever possible (in an EC2 scenario, think AWS ELB, EFS, etc.)&lt;/li&gt;
&lt;li&gt;Review your attack surfaces and read AWS Security Reference Architecture for following security best practices in your environment.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Detection&lt;/strong&gt;&lt;br&gt;
This step can be achieved if you're all set in Step 1. Otherwise, you've been hacked for months, and attackers could be possible in your environment to wait for the right time to get full access or exploit you.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0fue15eeur43xava1uc1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0fue15eeur43xava1uc1.png" alt="Detection Step" width="690" height="162"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Detection is so critical; we need to configure AWS security services to do this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Based on Step 1, to gain visibility of your possible attack surfaces and your activities, you need to enable logging and monitoring services.&lt;/li&gt;
&lt;li&gt;For anomaly detection, you should think about implementing notifications and alarming with AWS EventBridge.&lt;/li&gt;
&lt;li&gt;Enable AWS GuardDuty which is a threat intelligence service.&lt;/li&gt;
&lt;li&gt;Enable AWS Config for analyzing all the changes in your AWS environment.&lt;/li&gt;
&lt;li&gt;Use AWS Detective for analyzing the hacking scenario. Which IP? What happened?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After Step 1 and Step 2, you can only detect the attack. But you're &lt;strong&gt;still hacked.&lt;/strong&gt; What should you do as a cloud security engineer?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Containment&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You need to do some configurations and changes after you understand that you're under attack. One of the most things that have been done is terminating compromised instances immediately. You should not do that; we need this instance for investigation and forensic analysis. Automation is the key here because it's a more simple and quick way to deny attackers.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw3n2x35m5c0jyq0fm9ob.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw3n2x35m5c0jyq0fm9ob.png" alt="Containment Step" width="698" height="120"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;These are the following steps to do:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Detach this instance from any autoscaling group and ELB target group immediately. You don't want your customers connecting the compromised instance.&lt;/li&gt;
&lt;li&gt;Remove the earlier security group that is attached to your instance. Create a new security group. The new security group has included 0.0.0. 0/0 ingress and egress rule. Attach the new security group to the compromised instance. Delete the ingress and egress rule. You should think removing all rules in the existing security group is a solution, but it's not a solution for &lt;a href="https://hackingthe.cloud/aws/general-knowledge/connection-tracking/"&gt;tracked connections&lt;/a&gt;. You should automate this process. Maybe you can create a Python function with AWS Lambda that can be invoked with an instance ID parameter.&lt;/li&gt;
&lt;li&gt;If you're using AWS EC2 Instance roles to access your AWS resources, roles create temporary credentials for you. If you're not disabling these, an attacker can still use them. To remove all actions from the temporary credentials, you should attach an explicit deny policy to your AWS EC2 role. If you're using hardcoded AWS credentials in your instance (you should not do this by the way), you need to disable them. Deleting AWS credentials directly can occur production issues if you're using the same credentials on different environments.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Analysis&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After completing the containment, you need to take a snapshot of the compromised EC2 instance immediately. You should not shut down the instance (We need information that can be deleted during the shutdown process).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F314e53vx5kq34cp7a78q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F314e53vx5kq34cp7a78q.png" alt="Analysis step" width="685" height="138"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Besides all of these:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Take a memory dump of all processes in your instance.&lt;/li&gt;
&lt;li&gt;You need to create a new EC2. Install all your forensic and analysis tools in it. Also, you can create a new instance with an EBS snapshot that you've created from the compromised instance. For the security group, whitelist only newly created instance IP. You need to connect the EC2 instance with an EBS snapshot from the newly created EC2.&lt;/li&gt;
&lt;li&gt;If there is any log file in the server, extract all of them for detailed analysis. If not, use AWS CloudWatch, CloudTrail, and other logging options.&lt;/li&gt;
&lt;li&gt;Analyze and list the IP list that attacks you. If these IP addresses belong to AWS, report this abuse from &lt;a href="https://support.aws.amazon.com/#/contacts/report-abuse"&gt;here.&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Use AWS Config details for all your resource state changes.&lt;/li&gt;
&lt;li&gt;If you're using 3rd party tools, you should also review their details.&lt;/li&gt;
&lt;li&gt;Terminate the compromised instance after completing the EBS volume step.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Recovery &amp;amp; Lessons Learned&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In Step 4, you did all your analysis about why this attack happened, how much did it affect our application and what should we do if it happens again. So, it's recovery time with a healthy, non-compromised instance. You need to create your AWS EC2 instance again.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5gowwlr8ss33e4p5c5wc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5gowwlr8ss33e4p5c5wc.png" alt="Recovery &amp;amp; Lessons Learned Step" width="661" height="133"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Infrastructure as Code options such as AWS CloudFormation can help you about building a new server with configurations that you've determined. Also, if you have AMI from the backups (not compromised ones), you can create your AWS EC2 instance also. But please, you should not do mistakes that are configured before the incident happened.&lt;/p&gt;




&lt;p&gt;After all these steps, you should monitor regularly for detecting something happening in your environment. In Step 5, you should learn your security issues, vulnerabilities that cause attacks, and your attack surfaces. Maybe you opened to an SSH port with a simple username/password combination, maybe you have a library that can be affected by a Log4j attack, or maybe you have an admin panel that is available all over the world. Who knows? You should know. You need to think about all the aspects of security incidents and hacking scenarios. Before all of these happened, you should use all logging and monitoring options, and all security services wherever possible. Also, you need to create an incident response plan for answering the "What should we do if it happens again?" In addition to this, you need to practice, practice and practice. You need to set "game days" to simulate your attack scenarios. This is not only a technical view, but we also need to see the team's reactions to a security attack. &lt;/p&gt;

&lt;p&gt;Thanks for reading! Stay safe in the cloud! 🤞 ⛅️&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>cloud</category>
    </item>
    <item>
      <title>Monitor Your Cloud Environment with AWS Trusted Advisor ☁️</title>
      <dc:creator>Sena Yakut</dc:creator>
      <pubDate>Mon, 26 Dec 2022 20:32:27 +0000</pubDate>
      <link>https://dev.to/aws-builders/monitor-your-cloud-environment-with-aws-trusted-advisor-1oeg</link>
      <guid>https://dev.to/aws-builders/monitor-your-cloud-environment-with-aws-trusted-advisor-1oeg</guid>
      <description>&lt;p&gt;Cloud security monitoring and increasing visibility are two main important things in the cloud. It helps us to build automated solutions for identifying risky or malicious behavior in the cloud environment. It is also required for every major regulation such as HIPAA, PCI DSS, etc.&lt;/p&gt;

&lt;p&gt;Every day there are lots of AWS services that we’re using and gaining visibility and creating monitoring solutions are our responsibility. As your cloud environment grows, there could be many security problems if you don’t know where they are and whether are they configured properly from a security perspective. In AWS, there are lots of security services, and using and managing them is our responsibility. One of them is AWS Trusted Advisor a service that analyzes your AWS environment and provides recommendations for you in five categories: &lt;strong&gt;Cost optimization, security, fault tolerance, performance, and service limits.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk86llok9o2oo4zx2x2bn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk86llok9o2oo4zx2x2bn.png" alt="AWS Trusted Advisor Recommendations" width="800" height="133"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this blog, we’re focusing on the security part of the AWS Trusted Advisor. But you should consider the other parts of improving your environment such as cost, performance, etc.&lt;/p&gt;

&lt;p&gt;In the AWS Trusted Advisor, there are lots of controls for security configurations of your AWS resources, some examples are the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Security Groups — Specific Ports Unrestricted:&lt;/strong&gt; This control checks security groups for rules that allow unrestricted access to specific ports such as SSH and RDP. Unrestricted access increases opportunities for malicious activity (hacking, denial-of-service attacks, loss of data).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Amazon RDS Public Snapshots:&lt;/strong&gt; This control checks the permission settings for your Amazon RDS DB snapshots and alerts you if any snapshots are marked as public. When you make a snapshot public, you give all AWS accounts and anonymous users access to all the data on the snapshot. If sharing snapshots is a requirement for you, you can mark the snapshot as private and then specify the user or accounts you want to share.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In AWS Trusted advisor, some security controls are enabled by default and free, and some of them are needs upgrading your AWS Account and you need to pay for it. These controls are more deep-dive solutions and recommendations for you.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frrp4qrmu0ckspt85755p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frrp4qrmu0ckspt85755p.png" alt="Upgrade Your AWS Support Plan for all Trusted Advisor Checks" width="800" height="341"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Automated Monitoring of Trusted Advisor Security Checks:&lt;/strong&gt;&lt;br&gt;
From a cloud security perspective, enabling AWS Trusted Advisor is not enough. We need to automate and get action about controls. But AWS Trusted Advisor scenarios are different plan by plan. You can use the Trusted Advisor console to access checks in the security category if you have a Basic/Developer Support plan. If you have other plans, in addition to all of these, you can use AWS Support API to access all Trusted Advisor checks. You can also Amazon CloudWatch or &lt;a href="https://aws.amazon.com/eventbridge/?nc1=h_ls" rel="noopener noreferrer"&gt;EventBridge &lt;/a&gt; events to monitor and alarm.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Using Trusted Advisor with Different Scenarios:&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;1) You have a strict security policy for your databases. You do not want publicly accessible snapshots in your test and production environment. Also, you should not configure the security group rule of your databases overly permissive. If these actions are taken, there should be an incident response plan, to roll back all these configurations.&lt;/strong&gt;&lt;/em&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;Solution:&lt;/strong&gt;&lt;/em&gt; You can use AWS Trusted API metrics for this incident response plan. You can set an Amazon EventBridge Rule for these checks:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyskx0i7rj6jwg9etl137.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyskx0i7rj6jwg9etl137.png" alt="AWS EventBridge Rule Settings for Trusted Advisor" width="650" height="629"&gt;&lt;/a&gt;&lt;br&gt;
When this rule is triggered, you can invoke an AWS Lambda function that rolls back all the changes such as deleting overly permissive rules in the security group and disabling publicly accessible snapshots. You can use AWS SDK functions for these. This is the architectural design:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgckgceqold70at901u1q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgckgceqold70at901u1q.png" alt="AWS Trusted Advisor Automation Solution" width="450" height="365"&gt;&lt;/a&gt;&lt;br&gt;
Note: You need to upgrade your support plan for this. The Basic Plan which is enabled when you create a new account does not support AWS Trusted Advisor metrics. You have only a console view in this plan.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;2) Your security team wants to get a weekly summary security report of your environment. Do you need a custom solution or AWS Trusted Advisor can do that?&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;Solution:&lt;/strong&gt;&lt;/em&gt; In the Trusted Advisor, there is a “Notification” solution. You can receive the email notification for Trusted Advisor Recommendations once a week. You need to add your security, billing and operations contact e-mail addresses. You can also set up a Slack solution with this.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Focr1q4ogxszzzuzjkh9x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Focr1q4ogxszzzuzjkh9x.png" alt="AWS Trusted Advisor Notifications" width="634" height="477"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There are some useful links that I want to share with you if you want to implement them:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/blogs/mt/organizational-view-for-trusted-advisor/" rel="noopener noreferrer"&gt;Trusted Advisor with AWS Organizations:&lt;/a&gt; AWS Premium Support customers can use Trusted Advisor from an Organizational View. This provides a general and centralized view of all AWS Trusted Advisor recommendations.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/aws/Trusted-Advisor-Tools" rel="noopener noreferrer"&gt;Trusted Advisor Tools:&lt;/a&gt; This is a perfect GitHub repo for automating Trusted Advisor checks with AWS CloudFormation templates.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.trendmicro.com/cloudoneconformity/knowledge-base/aws/TrustedAdvisor/" rel="noopener noreferrer"&gt;Trusted Advisor Best Practices:&lt;/a&gt; There are some best practice rules for AWS Trusted Advisor by TrendMicro.&lt;/p&gt;

&lt;p&gt;Thanks for reading! Stay safe in the cloud! 🤞 ⛅️&lt;/p&gt;

</description>
      <category>remote</category>
      <category>productivity</category>
    </item>
    <item>
      <title>AWS re:Invent 2022: Security Session Notes 📝</title>
      <dc:creator>Sena Yakut</dc:creator>
      <pubDate>Sat, 10 Dec 2022 21:17:41 +0000</pubDate>
      <link>https://dev.to/aws-builders/aws-reinvent-2022-security-session-notes-47ph</link>
      <guid>https://dev.to/aws-builders/aws-reinvent-2022-security-session-notes-47ph</guid>
      <description>&lt;p&gt;AWS re:Invent 2022 is completed in Las Vegas. I did not attend in person, but I’ve watched some security sessions and announcements online and I want to share my notes with you. I hope you will enjoy it! Let's start! 🤔&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1- Amazon Security Lake:&lt;/strong&gt; As you know, security data analysis is challenging. Every day, lots of logs are generated from our application environments. Transparency is high, and this is fine, but we, as a customer, gets lots of work and analysis to do. Besides this, every log is a different format and there is heterogeneity in them. We can build custom solutions to query, but this is also a complex and not flexible solution. AWS starts with the "Imagine if there was a service that…" idea to fix all these problems. The answer is &lt;a href="https://aws.amazon.com/security-lake/"&gt;"Amazon Security Lake"&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk2lcoq1do1nzeue08yj1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk2lcoq1do1nzeue08yj1.png" alt="AWS re:Invent 2022 Amazon Security Lake Session" width="726" height="409"&gt;&lt;/a&gt;&lt;br&gt;
Amazon Security Lake is a service that gives you the ability to centralize your security data. The main features that I've noted:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Provides collect, optimize, normalize, and analyze your log data,&lt;/li&gt;
&lt;li&gt;Works with AWS Organizations,&lt;/li&gt;
&lt;li&gt;Collect any region &amp;amp; any account with AWS services,&lt;/li&gt;
&lt;li&gt;Log data can be immediately queried with Amazon Athena,&lt;/li&gt;
&lt;li&gt;Retention and storage class settings,&lt;/li&gt;
&lt;li&gt;Share your log data with 3rd party analytic tools.&lt;/li&gt;
&lt;li&gt;Regulatory-compliant service.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;strong&gt;2- Revitalize Your Security with the AWS Security Reference Architecture:&lt;/strong&gt; &lt;a href="https://www.youtube.com/watch?v=uFrj0jHN848"&gt;This &lt;/a&gt;is a great presentation to understand the AWS Security services and SRA in general. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjjdk73ghk8g6dbkksrf5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjjdk73ghk8g6dbkksrf5.png" alt="AWS re:Invent 2022 SRA Presentation" width="765" height="432"&gt;&lt;/a&gt;&lt;br&gt;
To use &lt;a href="https://docs.aws.amazon.com/prescriptive-guidance/latest/security-reference-architecture/welcome.html"&gt;Security Reference Architecture&lt;/a&gt;, you need to define your security requirements first. You need to review and revise the architectural design that you've already implemented. You should learn cloud security concepts and use Infrastructure as Code wherever as possible. You must learn and understand new security concepts for your cloud environments. This process does not a one-time job, it should be reviewed and applied regularly. AWS SRA is a complex architecture if you're just learning or implementing security services, but with this session, you'll see every security service and their usage one by one in different use cases such as network security, infrastructure security, etc. I strongly recommend that watching this session if you're willing to build your own cloud security posture.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;3- AWS Verified Access:&lt;/strong&gt; In our daily workloads, we're connecting our corporate VPN and accessing our private applications in our cloud environments. What if we do not need VPN for accessing our applications? What if we can do this in an easier way? With &lt;a href="https://aws.amazon.com/verified-access/"&gt;AWS Verified Access&lt;/a&gt;, we can do this. This AWS service is created based on these questions: "We need simple connectivity." "We need better security." "We want to know who can access my application from what type of device and when this is happening."&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffezy6jz97rn5x55f7vuq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffezy6jz97rn5x55f7vuq.png" alt="AWS re:Invent 2022 AWS Verified Access" width="705" height="398"&gt;&lt;/a&gt;&lt;br&gt;
AWS Verified access is built with zero trust principles and gives us better security posture. It also simplifies security operation, with just few clicks, you can set and use this service. It also logs every access request either allowed or denied. It is a requirement for troubleshooting, auditing, and compliance controls of an application.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgx36rjm3f2umux1adw6u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgx36rjm3f2umux1adw6u.png" alt="AWS re:Invent 2022 AWS Verified Access" width="694" height="392"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To set up AWS Verified Access, you need to connect your trust providers (identity or device provider). After that, you need to associate your applications (CNAME and AWS ACM configurations). Lastly, you need to add access policies. AWS Verified Access policies have a new policy language that AWS Build called "&lt;a href="https://www.cedarpolicy.com"&gt;Cedar&lt;/a&gt;". This is Cedar syntax:&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz774xu86lxpjuou4f3dq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz774xu86lxpjuou4f3dq.png" alt="Cedar Syntax" width="543" height="395"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you want to use this service, AWS recommends adding your new applications to AWS Verified Access. For your existing applications, users can access the application by VPN and internet (with Verified Access), do not disable VPN directly.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;4- Automate Data Discovery with Amazon Macie:&lt;/strong&gt; &lt;a href="https://aws.amazon.com/macie/"&gt;AWS Macie&lt;/a&gt; is relaunched in 2020. It focuses on sensitive data at scale using machine learning. It is natively integrated with AWS S3, and it aims to evaluate your data security posture in your buckets.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foolmm6jwsmhb620kqsr0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foolmm6jwsmhb620kqsr0.png" alt="AWS re:Invent 2022 AWS AWS Macie" width="744" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With the "Automate Data Discovery" feature, we will be able to discover sensitive data continuously across all our AWS accounts and AWS S3 buckets by just enabling this feature. It uses intelligent sampling techniques.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx4qxm1tu6os6ctqxq7s8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx4qxm1tu6os6ctqxq7s8.png" alt="AWS re:Invent 2022 AWS AWS Macie" width="791" height="353"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With automated sensitive data discovery, you can prioritize your buckets, findings, and remediations. You can read more details &lt;a href="https://aws.amazon.com/blogs/aws/automated-data-discovery-for-amazon-macie/"&gt;here.&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;5- Protecting production with Amazon ECS security features:&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=5-kgXY74Fpg"&gt;This session&lt;/a&gt; is very useful to understand and implement Amazon ECS security considerations. Container technology usage and transition increase day by day. It’s important to know which parts we are responsible for in our container environments, and which implementations should we have done on the network, data, and infrastructure side. In the session, you’ll see different use cases and team groups from security perspective and possible solutions and responsibilities about them. This is an example of use cases: &lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fneevlucwksdinlyj1143.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fneevlucwksdinlyj1143.png" alt="AWS re:Invent 2022 AWS ECS" width="774" height="437"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;6- Amazon Inspector Now Scans AWS Lambda Functions for Vulnerabilities&lt;/strong&gt;: Amazon Inspector Now Scans AWS Lambda Functions for Vulnerabilities: I’ve mentioned about this new feature &lt;a href="https://dev.to/aws-builders/scan-your-aws-lambda-functions-with-amazon-inspector-389a"&gt;in my blog&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Security visibility and vulnerability management are important steps for your cloud environments. These two steps are not one-time jobs, these should be regular and real-time if it’s possible. AWS has lots of services and solutions for securing your cloud, gaining visibility for vulnerabilities, and remediating them as soon as possible. Every day, the AWS team finds and adds new solutions to these services. Today, we’re going to learn new features of Amazon Inspector. With this new feature that announced in re:Invent 2022, you can scan your AWS Lambda functions with Amazon Inspector.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feje2euki9lh1p4du7271.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Feje2euki9lh1p4du7271.png" alt="AWS re:Invent 2022 AWS Amazon Inspector Now Scans AWS Lambda Functions for Vulnerabilities " width="800" height="452"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;I get all the screenshots from re:Invent 2022 videos. I'll mention other sessions or new announcements in my other blogs. You can access lots of security related sessions in this &lt;a href="https://www.youtube.com/watch?v=5-kgXY74Fpg&amp;amp;list=PL2yQDdvlhXf8bvQJuSP1DQ8vu75jdttlM"&gt;list.&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Thanks for reading! Stay safe in the cloud! 🌤 ⛅️ 🌥&lt;/p&gt;

</description>
      <category>aws</category>
      <category>security</category>
      <category>cloud</category>
      <category>news</category>
    </item>
  </channel>
</rss>
