Glossary

Upwind Glossary

Your hub to learn about the future of cloud security and runtime.
Feed
Grid

Best Practices

A circular icon with a pink background displays three symbols: a padlock, code bracket, and gear—illustrating the best DevSecOps tools for security, coding, and settings. Upwind is elegantly inscribed in the top right corner.
April 14, 2025

Secure Your Private Cloud: Best Practices & Tools

Organizations often require greater security and control than public cloud providers can offer — especially when handling highly sensitive data or operating in heavily regulated industries. In such cases, private clouds provide an ideal solution, offering superior control, customization, and enhanced security by eliminating the shared infrastructure of public clouds. However, this increased level of…
An illustration of a padlock at the center, symbolizing container architecture for security, is connected to four rectangular shapes in a cross pattern on a light blue background. The upwind logo is prominently displayed at the top right corner.
March 26, 2025

Secure Your Container Architectures: Best Practices & Kubernetes

From monolithic to hybrid architectures and beyond, part of ensuring that containerized applications remain secure is how they’re constructed. And while it’s common for DevOps teams to implement containers without considering how to protect them against compromise or ensure high availability, it often leads to a mix of cloud architectures and security concerns. We’ve discussed…
A padlock featuring a brain symbol at its center, representing AI security, stands out against a light purple background. The logo upwind is elegantly positioned in the top right corner.
March 24, 2025

AI Security: Comprehensive Guide to Protecting AI Models & Data

Artificial intelligence (AI) is transforming industries, but it also introduces new security risks that traditional security measures don’t tackle. For example, AI models can be poisoned, manipulated, stolen, or exploited through adversarial techniques or unauthorized access. That makes AI security critical. It protects business assets that rely on AI and secures AI itself from emerging…
A padlock adorned with the European Union flag stands prominently on a blue gradient background, symbolizing security. In the top right corner, Upwind invites you to explore further, perhaps asking, What is the Digital Operational Resilience Act (DORA)?.
March 11, 2025

Understand & Achieve DORA Compliance

The European Union’s (EU) Digital Operational Resilience Act (DORA) is fully operational as of January 17, 2025, requiring financial institutions to follow risk management practices, report incidents, and have a plan for digital resiliency in case of breaches. But DORA isn’t just binding for banks and insurers — it regulates many third-party providers that offer…
A blue and white image showcases a circle split into three segments, each with an icon: a lock, coding brackets, and a gear. The term upwind graces the top right corner, echoing core DevSecOps principles.
March 3, 2025

Mastering DevSecOps: Best Practices for Secure Development

One of the most significant trends in the modern technology landscape, the DevSecOps blends development, security, and operations into a unified continuous development and security analysis pipeline. DevSecOps practices integrate security into the development lifecycle, enabling companies to release software with fewer known vulnerabilities and greater overall stability. But it’s not a perfect union.  This…
A blue padlock icon inside a white circle with a swirling design on a light blue background. The word upwind is in the top-right corner, subtly hinting at the importance of security measures like CIS Benchmarks.
February 18, 2025

Understanding & Implementing CIS Benchmarks for Enhanced Security

Companies voluntarily align with frameworks like CIS Benchmarks to meet customer expectations, ensure audit readiness, and build trust. These Benchmarks provide prescriptive guidelines for hardening systems, but their adoption isn’t just about ticking boxes — it’s about proving that security controls meet the highest standards in increasingly competitive and regulated markets. Aligning with CIS Benchmarks…
A stylized yellow key inside a circular badge with scalloped edges set against a soft orange background subtly hints at the concepts like SAST vs SCA. The word Upwind is visible in the top right corner, adding an air of mystery.
February 18, 2025

SAST vs SCA: The Key Differences

Layering these two approaches to code security might seem like a non-negotiable part of a more secure development lifecycle. However, when considering security tools like static application security testing (SAST) and software composition analysis (SCA), it’s easy to get caught in high-level definitions that don’t answer the real question: What do they actually solve, where…
A cartoon penguin, resembling the Linux mascot, sits on an ice floe clutching a padlock. Upwind: Your Essential Linux Security Guide graces the top right corner. The backdrop is a soothing light blue gradient.
January 22, 2025

Essential Guide to Linux Security Best Practices

Architectural patterns. Advanced kernel-level mitigations. Continuous integrity management. Supply chain security. There’s a lot that goes into Linux security. And all those pieces need to be coupled with strategic initiatives, like zero-trust architectures and scaling security policies.  This essential guide to Linux security topics starts with the common hardening basics, but also touches on more…
A blue and white circular icon featuring a padlock in the center, representing security or privacy. The word upwind is visible in the top right corner on a light blue background.
December 30, 2024

SOC 2 Compliance: A Practical Guide

While not legally required, SOC 2 has become a de facto standard for service organizations aiming to demonstrate their commitment to security and build trust with enterprise clients, partners, and regulated industries. For those tasked with managing modern cloud environments, the process of mapping compliance controls to dynamic workloads and sprawling infrastructure can feel like…
Illustration of a pink flower and a bee inside a blue base glass dome on a light green background, with the word upwind subtly integrated in the top right corner. Also, for those curious minds asking, What is EBPF Security? it’s not found under this dome but within tech marvels!.
December 23, 2024

Understand eBPF Security: Deep Visibility & Real-Time Threat

Extended Berkeley Packet Filter (eBPF) isn’t an agent. And it doesn’t exactly function like one, either. What is it? What does it do, and what security gaps does it close that agents can’t? What about performance? We’re breaking down what eBPF security includes, but then going deeper into visibility tradeoffs, operational overhead, and compliance concerns…
Illustration of a stylized sailboat with a brown hull and a white sail navigating the blue waters, symbolizing the Vulnerability Management Lifecycle. The word Upwind gracefully anchors the image in the top right corner.

Vulnerability Management Lifecycle: A Cloud-Native Approach

<?php

$post_id = get_the_ID();
$author_terms = get_the_terms( $post_id, 'author_tax' );
$authors = [];

if ( $author_terms && ! is_wp_error( $author_terms ) ) {
    foreach ( $author_terms as $term ) {
        $photo_id = get_field(
            'author_photo',
            'author_tax_' . $term->term_id
        );

        $authors[] = [
            'name'  => $term->name,
            'url'   => get_term_link( $term->term_id ),
            'photo' => $photo_id
                ? wp_get_attachment_image_url( $photo_id, 'author-image' )
                : '',
        ];
    }
}

?>

<div class="uw-bf-card__meta">
    <?php if ( count( $authors ) > 0 ) { ?>
        <div class="uw-bf-card__author-photos">

            <?php foreach ( $authors as $author ) { ?>
                <a
                    href="<?php echo esc_url( $author['url'] ); ?>"
                    class="uw-bf-card__author-photo-link"
                >
                    <img
                        class="uw-bf-card__author-photo"
                        src="<?php echo esc_url( $author['photo'] ); ?>"
                        alt="<?php echo esc_attr( $author['name'] ); ?>"
                    >
                </a>
            <?php } ?>

        </div>
    <?php } ?>

    <div class="uw-bf-card__meta-sub">
        <span class="uw-bf-card__author-names">
            <?php echo getAuthorNames( $authors ); ?>
        </span>

        <span class="uw-bf-card__date">
            <?php echo get_the_date( 'F d, Y', $post_id ); ?>
        </span>
    </div>
</div>
.brxe-qhtnal{
  .uw-bf-card__author-photo, .uw-bf-card__author-photo-link {
  width: 53px;
  height: 53px;
}
}
The vulnerability management lifecycle (VML) tracks a vulnerability from discovery to resolution by identifying system weaknesses, assessing their risk, applying fixes, and verifying successful remediation. It can take diligence to manage every stage of the process, so organizations committed to the model might wonder how to reconcile the VML with modern tools like CNAPPs, present…
Read More
<?php $url = get_permalink(); ?>
<?php $title = get_the_title(); ?>

<div class="uw-bf-card__share">
  <a class="uw-bf-share-btn" href="https://www.linkedin.com/shareArticle?mini=true&url=<?php echo urlencode($url) . '&title=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on LinkedIn"><svg width="12" height="11" viewBox="0 0 12 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.51819 10.9373H0.185826V3.63501H2.51819V10.9373ZM1.35075 2.63892C0.604939 2.63892 0 2.03833 0 1.31323C5.33822e-09 0.964941 0.142311 0.630916 0.395626 0.384637C0.648942 0.138358 0.992511 0 1.35075 0C1.709 0 2.05256 0.138358 2.30588 0.384637C2.5592 0.630916 2.70151 0.964941 2.70151 1.31323C2.70151 2.03833 2.09632 2.63892 1.35075 2.63892ZM11.2475 10.9373H8.92015V7.38257C8.92015 6.5354 8.90257 5.44897 7.70751 5.44897C6.49487 5.44897 6.30904 6.36938 6.30904 7.32153V10.9373H3.97919V3.63501H6.21613V4.6311H6.24877C6.56016 4.05737 7.32079 3.4519 8.45558 3.4519C10.8161 3.4519 11.25 4.96313 11.25 6.92603V10.9373H11.2475Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://twitter.com/intent/tweet?url=<?php echo rawurlencode($url) . '&text=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on X"><svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.3319 5.92804L13.5437 0H12.3087L7.78327 5.14724L4.16883 0H0L5.46574 7.78354L0 14H1.2351L6.01406 8.56434L9.83117 14H14L8.3316 5.92804H8.3319ZM6.64026 7.85211L6.08647 7.07705L1.68013 0.909776H3.57717L7.13314 5.88696L7.68693 6.66202L12.3093 13.1316H10.4122L6.64026 7.85241V7.85211Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://www.facebook.com/sharer/sharer.php?u=<?php echo urlencode($url); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on Facebook"><svg width="7" height="14" viewBox="0 0 7 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.00586 7.73438L6.33914 5.24595H4.25531V3.63113C4.25531 2.95034 4.54641 2.28674 5.47969 2.28674H6.42703V0.168115C6.42703 0.168115 5.56734 0 4.74539 0C3.0293 0 1.90758 1.19185 1.90758 3.34941V5.24595H0V7.73438H1.90758V13.75H4.25531V7.73438H6.00586Z" fill="#75808E"/></svg></a>
  
  <div class="uw-bf-copy-wrap">
    <button class="uw-bf-share-btn uw-bf-copy-btn" data-url="<?php echo get_permalink(); ?>" aria-label="Copy link">
      <svg width="15" height="11" viewBox="0 0 15 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.1713 5.42406C14.4955 4.18261 14.4955 2.17211 13.1713 0.930656C11.9994 -0.167977 10.1525 -0.310799 8.80488 0.592277L8.76738 0.616447C8.42988 0.842765 8.35254 1.28222 8.59394 1.59643C8.83535 1.91064 9.3041 1.98534 9.63926 1.75902L9.67676 1.73485C10.4291 1.23168 11.458 1.31078 12.1096 1.92382C12.8479 2.61596 12.8479 3.73656 12.1096 4.4287L9.47988 6.89843C8.7416 7.59057 7.54629 7.59057 6.80801 6.89843C6.1541 6.28539 6.06973 5.32079 6.60645 4.61767L6.63223 4.58251C6.87363 4.26611 6.79394 3.82665 6.45879 3.60253C6.12363 3.37841 5.65254 3.45092 5.41348 3.76513L5.3877 3.80028C4.42207 5.06152 4.57441 6.79296 5.74629 7.89159C7.07051 9.13305 9.21504 9.13305 10.5393 7.89159L13.1713 5.42406ZM0.993164 4.9099C-0.331055 6.15136 -0.331055 8.16186 0.993164 9.40331C2.16504 10.5019 4.01191 10.6448 5.35957 9.74169L5.39707 9.71752C5.73457 9.4912 5.81191 9.05175 5.57051 8.73754C5.3291 8.42333 4.86035 8.34863 4.5252 8.57494L4.4877 8.59911C3.73535 9.10229 2.70645 9.02319 2.05488 8.41015C1.3166 7.71581 1.3166 6.59521 2.05488 5.90307L4.68457 3.43554C5.42285 2.7434 6.61816 2.7434 7.35645 3.43554C8.01035 4.04858 8.09473 5.01318 7.55801 5.7185L7.53223 5.75365C7.29082 6.07006 7.37051 6.50951 7.70566 6.73363C8.04082 6.95776 8.51191 6.88525 8.75098 6.57104L8.77676 6.53588C9.74238 5.27245 9.59004 3.54101 8.41816 2.44237C7.09395 1.20092 4.94941 1.20092 3.6252 2.44237L0.993164 4.9099Z" fill="#75808E"/></svg>
      <div class="uw-bf-copy-notify">Link copied</div>
    </button>
  </div>
</div>
.uw-bf-copy-notify {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.uw-bf-copy-btn.is-copied .uw-bf-copy-notify {
  opacity: 1;
  visibility: visible;
}
document.addEventListener('click', async (event) => {
    const button = event.target.closest('.uw-bf-copy-btn');

    if (!button) {
        return;
    }

    const url = button.dataset.url;

    try {
        await navigator.clipboard.writeText(url);

        button.classList.add('is-copied');

        setTimeout(() => {
            button.classList.remove('is-copied');
        }, 2000);

    } catch (error) {
        console.error('COPY ERROR:', error);
    }    
});
Illustration of a broken purple candy against a blue backdrop, subtly evoking the intricate investigation methods akin to Digital Forensics and Incident Response (DFIR), with the word upwind gracing the top right corner.

Understanding Digital Forensics & Incident Response (DFIR) with CNAPP

<?php

$post_id = get_the_ID();
$author_terms = get_the_terms( $post_id, 'author_tax' );
$authors = [];

if ( $author_terms && ! is_wp_error( $author_terms ) ) {
    foreach ( $author_terms as $term ) {
        $photo_id = get_field(
            'author_photo',
            'author_tax_' . $term->term_id
        );

        $authors[] = [
            'name'  => $term->name,
            'url'   => get_term_link( $term->term_id ),
            'photo' => $photo_id
                ? wp_get_attachment_image_url( $photo_id, 'author-image' )
                : '',
        ];
    }
}

?>

<div class="uw-bf-card__meta">
    <?php if ( count( $authors ) > 0 ) { ?>
        <div class="uw-bf-card__author-photos">

            <?php foreach ( $authors as $author ) { ?>
                <a
                    href="<?php echo esc_url( $author['url'] ); ?>"
                    class="uw-bf-card__author-photo-link"
                >
                    <img
                        class="uw-bf-card__author-photo"
                        src="<?php echo esc_url( $author['photo'] ); ?>"
                        alt="<?php echo esc_attr( $author['name'] ); ?>"
                    >
                </a>
            <?php } ?>

        </div>
    <?php } ?>

    <div class="uw-bf-card__meta-sub">
        <span class="uw-bf-card__author-names">
            <?php echo getAuthorNames( $authors ); ?>
        </span>

        <span class="uw-bf-card__date">
            <?php echo get_the_date( 'F d, Y', $post_id ); ?>
        </span>
    </div>
</div>
.brxe-qhtnal{
  .uw-bf-card__author-photo, .uw-bf-card__author-photo-link {
  width: 53px;
  height: 53px;
}
}
In the alphabet soup of cybersecurity — ranging from SIEM (Security Information and Event Management) to IAM (Identity and Access Management), SOC (Security Operations Center), GRC (Governance, Risk, and Compliance), and others — DFIR stands out because it handles the post-compromise investigative response rather than preventive measures or policy frameworks. Do you need to add…
Read More
<?php $url = get_permalink(); ?>
<?php $title = get_the_title(); ?>

<div class="uw-bf-card__share">
  <a class="uw-bf-share-btn" href="https://www.linkedin.com/shareArticle?mini=true&url=<?php echo urlencode($url) . '&title=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on LinkedIn"><svg width="12" height="11" viewBox="0 0 12 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.51819 10.9373H0.185826V3.63501H2.51819V10.9373ZM1.35075 2.63892C0.604939 2.63892 0 2.03833 0 1.31323C5.33822e-09 0.964941 0.142311 0.630916 0.395626 0.384637C0.648942 0.138358 0.992511 0 1.35075 0C1.709 0 2.05256 0.138358 2.30588 0.384637C2.5592 0.630916 2.70151 0.964941 2.70151 1.31323C2.70151 2.03833 2.09632 2.63892 1.35075 2.63892ZM11.2475 10.9373H8.92015V7.38257C8.92015 6.5354 8.90257 5.44897 7.70751 5.44897C6.49487 5.44897 6.30904 6.36938 6.30904 7.32153V10.9373H3.97919V3.63501H6.21613V4.6311H6.24877C6.56016 4.05737 7.32079 3.4519 8.45558 3.4519C10.8161 3.4519 11.25 4.96313 11.25 6.92603V10.9373H11.2475Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://twitter.com/intent/tweet?url=<?php echo rawurlencode($url) . '&text=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on X"><svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.3319 5.92804L13.5437 0H12.3087L7.78327 5.14724L4.16883 0H0L5.46574 7.78354L0 14H1.2351L6.01406 8.56434L9.83117 14H14L8.3316 5.92804H8.3319ZM6.64026 7.85211L6.08647 7.07705L1.68013 0.909776H3.57717L7.13314 5.88696L7.68693 6.66202L12.3093 13.1316H10.4122L6.64026 7.85241V7.85211Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://www.facebook.com/sharer/sharer.php?u=<?php echo urlencode($url); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on Facebook"><svg width="7" height="14" viewBox="0 0 7 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.00586 7.73438L6.33914 5.24595H4.25531V3.63113C4.25531 2.95034 4.54641 2.28674 5.47969 2.28674H6.42703V0.168115C6.42703 0.168115 5.56734 0 4.74539 0C3.0293 0 1.90758 1.19185 1.90758 3.34941V5.24595H0V7.73438H1.90758V13.75H4.25531V7.73438H6.00586Z" fill="#75808E"/></svg></a>
  
  <div class="uw-bf-copy-wrap">
    <button class="uw-bf-share-btn uw-bf-copy-btn" data-url="<?php echo get_permalink(); ?>" aria-label="Copy link">
      <svg width="15" height="11" viewBox="0 0 15 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.1713 5.42406C14.4955 4.18261 14.4955 2.17211 13.1713 0.930656C11.9994 -0.167977 10.1525 -0.310799 8.80488 0.592277L8.76738 0.616447C8.42988 0.842765 8.35254 1.28222 8.59394 1.59643C8.83535 1.91064 9.3041 1.98534 9.63926 1.75902L9.67676 1.73485C10.4291 1.23168 11.458 1.31078 12.1096 1.92382C12.8479 2.61596 12.8479 3.73656 12.1096 4.4287L9.47988 6.89843C8.7416 7.59057 7.54629 7.59057 6.80801 6.89843C6.1541 6.28539 6.06973 5.32079 6.60645 4.61767L6.63223 4.58251C6.87363 4.26611 6.79394 3.82665 6.45879 3.60253C6.12363 3.37841 5.65254 3.45092 5.41348 3.76513L5.3877 3.80028C4.42207 5.06152 4.57441 6.79296 5.74629 7.89159C7.07051 9.13305 9.21504 9.13305 10.5393 7.89159L13.1713 5.42406ZM0.993164 4.9099C-0.331055 6.15136 -0.331055 8.16186 0.993164 9.40331C2.16504 10.5019 4.01191 10.6448 5.35957 9.74169L5.39707 9.71752C5.73457 9.4912 5.81191 9.05175 5.57051 8.73754C5.3291 8.42333 4.86035 8.34863 4.5252 8.57494L4.4877 8.59911C3.73535 9.10229 2.70645 9.02319 2.05488 8.41015C1.3166 7.71581 1.3166 6.59521 2.05488 5.90307L4.68457 3.43554C5.42285 2.7434 6.61816 2.7434 7.35645 3.43554C8.01035 4.04858 8.09473 5.01318 7.55801 5.7185L7.53223 5.75365C7.29082 6.07006 7.37051 6.50951 7.70566 6.73363C8.04082 6.95776 8.51191 6.88525 8.75098 6.57104L8.77676 6.53588C9.74238 5.27245 9.59004 3.54101 8.41816 2.44237C7.09395 1.20092 4.94941 1.20092 3.6252 2.44237L0.993164 4.9099Z" fill="#75808E"/></svg>
      <div class="uw-bf-copy-notify">Link copied</div>
    </button>
  </div>
</div>
.uw-bf-copy-notify {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.uw-bf-copy-btn.is-copied .uw-bf-copy-notify {
  opacity: 1;
  visibility: visible;
}
document.addEventListener('click', async (event) => {
    const button = event.target.closest('.uw-bf-copy-btn');

    if (!button) {
        return;
    }

    const url = button.dataset.url;

    try {
        await navigator.clipboard.writeText(url);

        button.classList.add('is-copied');

        setTimeout(() => {
            button.classList.remove('is-copied');
        }, 2000);

    } catch (error) {
        console.error('COPY ERROR:', error);
    }    
});
A purple beetle under a magnifying glass on a light purple background subtly illustrates the question, What is Vulnerability Scanning? with the upwind logo elegantly placed in the top right corner.

Vulnerability Scanning: A Comprehensive Guide

<?php

$post_id = get_the_ID();
$author_terms = get_the_terms( $post_id, 'author_tax' );
$authors = [];

if ( $author_terms && ! is_wp_error( $author_terms ) ) {
    foreach ( $author_terms as $term ) {
        $photo_id = get_field(
            'author_photo',
            'author_tax_' . $term->term_id
        );

        $authors[] = [
            'name'  => $term->name,
            'url'   => get_term_link( $term->term_id ),
            'photo' => $photo_id
                ? wp_get_attachment_image_url( $photo_id, 'author-image' )
                : '',
        ];
    }
}

?>

<div class="uw-bf-card__meta">
    <?php if ( count( $authors ) > 0 ) { ?>
        <div class="uw-bf-card__author-photos">

            <?php foreach ( $authors as $author ) { ?>
                <a
                    href="<?php echo esc_url( $author['url'] ); ?>"
                    class="uw-bf-card__author-photo-link"
                >
                    <img
                        class="uw-bf-card__author-photo"
                        src="<?php echo esc_url( $author['photo'] ); ?>"
                        alt="<?php echo esc_attr( $author['name'] ); ?>"
                    >
                </a>
            <?php } ?>

        </div>
    <?php } ?>

    <div class="uw-bf-card__meta-sub">
        <span class="uw-bf-card__author-names">
            <?php echo getAuthorNames( $authors ); ?>
        </span>

        <span class="uw-bf-card__date">
            <?php echo get_the_date( 'F d, Y', $post_id ); ?>
        </span>
    </div>
</div>
.brxe-qhtnal{
  .uw-bf-card__author-photo, .uw-bf-card__author-photo-link {
  width: 53px;
  height: 53px;
}
}
When it comes to vulnerability scanning, complexities have long made what might seem simple a complex, multi-layered endeavor. That doesn’t mean vulnerability scanning isn’t worthwhile or that it isn’t a foundational part of enterprise security. It just means that as IT environments evolve with ephemeral assets and cloud-native ecosystems, balancing security with efficiency must also…
Read More
<?php $url = get_permalink(); ?>
<?php $title = get_the_title(); ?>

<div class="uw-bf-card__share">
  <a class="uw-bf-share-btn" href="https://www.linkedin.com/shareArticle?mini=true&url=<?php echo urlencode($url) . '&title=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on LinkedIn"><svg width="12" height="11" viewBox="0 0 12 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.51819 10.9373H0.185826V3.63501H2.51819V10.9373ZM1.35075 2.63892C0.604939 2.63892 0 2.03833 0 1.31323C5.33822e-09 0.964941 0.142311 0.630916 0.395626 0.384637C0.648942 0.138358 0.992511 0 1.35075 0C1.709 0 2.05256 0.138358 2.30588 0.384637C2.5592 0.630916 2.70151 0.964941 2.70151 1.31323C2.70151 2.03833 2.09632 2.63892 1.35075 2.63892ZM11.2475 10.9373H8.92015V7.38257C8.92015 6.5354 8.90257 5.44897 7.70751 5.44897C6.49487 5.44897 6.30904 6.36938 6.30904 7.32153V10.9373H3.97919V3.63501H6.21613V4.6311H6.24877C6.56016 4.05737 7.32079 3.4519 8.45558 3.4519C10.8161 3.4519 11.25 4.96313 11.25 6.92603V10.9373H11.2475Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://twitter.com/intent/tweet?url=<?php echo rawurlencode($url) . '&text=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on X"><svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.3319 5.92804L13.5437 0H12.3087L7.78327 5.14724L4.16883 0H0L5.46574 7.78354L0 14H1.2351L6.01406 8.56434L9.83117 14H14L8.3316 5.92804H8.3319ZM6.64026 7.85211L6.08647 7.07705L1.68013 0.909776H3.57717L7.13314 5.88696L7.68693 6.66202L12.3093 13.1316H10.4122L6.64026 7.85241V7.85211Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://www.facebook.com/sharer/sharer.php?u=<?php echo urlencode($url); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on Facebook"><svg width="7" height="14" viewBox="0 0 7 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.00586 7.73438L6.33914 5.24595H4.25531V3.63113C4.25531 2.95034 4.54641 2.28674 5.47969 2.28674H6.42703V0.168115C6.42703 0.168115 5.56734 0 4.74539 0C3.0293 0 1.90758 1.19185 1.90758 3.34941V5.24595H0V7.73438H1.90758V13.75H4.25531V7.73438H6.00586Z" fill="#75808E"/></svg></a>
  
  <div class="uw-bf-copy-wrap">
    <button class="uw-bf-share-btn uw-bf-copy-btn" data-url="<?php echo get_permalink(); ?>" aria-label="Copy link">
      <svg width="15" height="11" viewBox="0 0 15 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.1713 5.42406C14.4955 4.18261 14.4955 2.17211 13.1713 0.930656C11.9994 -0.167977 10.1525 -0.310799 8.80488 0.592277L8.76738 0.616447C8.42988 0.842765 8.35254 1.28222 8.59394 1.59643C8.83535 1.91064 9.3041 1.98534 9.63926 1.75902L9.67676 1.73485C10.4291 1.23168 11.458 1.31078 12.1096 1.92382C12.8479 2.61596 12.8479 3.73656 12.1096 4.4287L9.47988 6.89843C8.7416 7.59057 7.54629 7.59057 6.80801 6.89843C6.1541 6.28539 6.06973 5.32079 6.60645 4.61767L6.63223 4.58251C6.87363 4.26611 6.79394 3.82665 6.45879 3.60253C6.12363 3.37841 5.65254 3.45092 5.41348 3.76513L5.3877 3.80028C4.42207 5.06152 4.57441 6.79296 5.74629 7.89159C7.07051 9.13305 9.21504 9.13305 10.5393 7.89159L13.1713 5.42406ZM0.993164 4.9099C-0.331055 6.15136 -0.331055 8.16186 0.993164 9.40331C2.16504 10.5019 4.01191 10.6448 5.35957 9.74169L5.39707 9.71752C5.73457 9.4912 5.81191 9.05175 5.57051 8.73754C5.3291 8.42333 4.86035 8.34863 4.5252 8.57494L4.4877 8.59911C3.73535 9.10229 2.70645 9.02319 2.05488 8.41015C1.3166 7.71581 1.3166 6.59521 2.05488 5.90307L4.68457 3.43554C5.42285 2.7434 6.61816 2.7434 7.35645 3.43554C8.01035 4.04858 8.09473 5.01318 7.55801 5.7185L7.53223 5.75365C7.29082 6.07006 7.37051 6.50951 7.70566 6.73363C8.04082 6.95776 8.51191 6.88525 8.75098 6.57104L8.77676 6.53588C9.74238 5.27245 9.59004 3.54101 8.41816 2.44237C7.09395 1.20092 4.94941 1.20092 3.6252 2.44237L0.993164 4.9099Z" fill="#75808E"/></svg>
      <div class="uw-bf-copy-notify">Link copied</div>
    </button>
  </div>
</div>
.uw-bf-copy-notify {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.uw-bf-copy-btn.is-copied .uw-bf-copy-notify {
  opacity: 1;
  visibility: visible;
}
document.addEventListener('click', async (event) => {
    const button = event.target.closest('.uw-bf-copy-btn');

    if (!button) {
        return;
    }

    const url = button.dataset.url;

    try {
        await navigator.clipboard.writeText(url);

        button.classList.add('is-copied');

        setTimeout(() => {
            button.classList.remove('is-copied');
        }, 2000);

    } catch (error) {
        console.error('COPY ERROR:', error);
    }    
});
A magnifying glass focusing on a red bug icon against a light pink background, with What is a CVE? in the upper right corner.

Prioritizing CVEs for Effective Vulnerability Management

<?php

$post_id = get_the_ID();
$author_terms = get_the_terms( $post_id, 'author_tax' );
$authors = [];

if ( $author_terms && ! is_wp_error( $author_terms ) ) {
    foreach ( $author_terms as $term ) {
        $photo_id = get_field(
            'author_photo',
            'author_tax_' . $term->term_id
        );

        $authors[] = [
            'name'  => $term->name,
            'url'   => get_term_link( $term->term_id ),
            'photo' => $photo_id
                ? wp_get_attachment_image_url( $photo_id, 'author-image' )
                : '',
        ];
    }
}

?>

<div class="uw-bf-card__meta">
    <?php if ( count( $authors ) > 0 ) { ?>
        <div class="uw-bf-card__author-photos">

            <?php foreach ( $authors as $author ) { ?>
                <a
                    href="<?php echo esc_url( $author['url'] ); ?>"
                    class="uw-bf-card__author-photo-link"
                >
                    <img
                        class="uw-bf-card__author-photo"
                        src="<?php echo esc_url( $author['photo'] ); ?>"
                        alt="<?php echo esc_attr( $author['name'] ); ?>"
                    >
                </a>
            <?php } ?>

        </div>
    <?php } ?>

    <div class="uw-bf-card__meta-sub">
        <span class="uw-bf-card__author-names">
            <?php echo getAuthorNames( $authors ); ?>
        </span>

        <span class="uw-bf-card__date">
            <?php echo get_the_date( 'F d, Y', $post_id ); ?>
        </span>
    </div>
</div>
.brxe-qhtnal{
  .uw-bf-card__author-photo, .uw-bf-card__author-photo-link {
  width: 53px;
  height: 53px;
}
}
Researchers, vendors, and security pros have disclosed more than 280,000 known common vulnerabilities and exposures (CVEs). But with this impossibly long list of priorities, how can teams know what’s truly important? After all, the “patch everything” approach is unscalable, and regardless, not all CVEs pose equal risks. Lack of prioritization also erodes confidence in teams…
Read More
<?php $url = get_permalink(); ?>
<?php $title = get_the_title(); ?>

<div class="uw-bf-card__share">
  <a class="uw-bf-share-btn" href="https://www.linkedin.com/shareArticle?mini=true&url=<?php echo urlencode($url) . '&title=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on LinkedIn"><svg width="12" height="11" viewBox="0 0 12 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.51819 10.9373H0.185826V3.63501H2.51819V10.9373ZM1.35075 2.63892C0.604939 2.63892 0 2.03833 0 1.31323C5.33822e-09 0.964941 0.142311 0.630916 0.395626 0.384637C0.648942 0.138358 0.992511 0 1.35075 0C1.709 0 2.05256 0.138358 2.30588 0.384637C2.5592 0.630916 2.70151 0.964941 2.70151 1.31323C2.70151 2.03833 2.09632 2.63892 1.35075 2.63892ZM11.2475 10.9373H8.92015V7.38257C8.92015 6.5354 8.90257 5.44897 7.70751 5.44897C6.49487 5.44897 6.30904 6.36938 6.30904 7.32153V10.9373H3.97919V3.63501H6.21613V4.6311H6.24877C6.56016 4.05737 7.32079 3.4519 8.45558 3.4519C10.8161 3.4519 11.25 4.96313 11.25 6.92603V10.9373H11.2475Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://twitter.com/intent/tweet?url=<?php echo rawurlencode($url) . '&text=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on X"><svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.3319 5.92804L13.5437 0H12.3087L7.78327 5.14724L4.16883 0H0L5.46574 7.78354L0 14H1.2351L6.01406 8.56434L9.83117 14H14L8.3316 5.92804H8.3319ZM6.64026 7.85211L6.08647 7.07705L1.68013 0.909776H3.57717L7.13314 5.88696L7.68693 6.66202L12.3093 13.1316H10.4122L6.64026 7.85241V7.85211Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://www.facebook.com/sharer/sharer.php?u=<?php echo urlencode($url); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on Facebook"><svg width="7" height="14" viewBox="0 0 7 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.00586 7.73438L6.33914 5.24595H4.25531V3.63113C4.25531 2.95034 4.54641 2.28674 5.47969 2.28674H6.42703V0.168115C6.42703 0.168115 5.56734 0 4.74539 0C3.0293 0 1.90758 1.19185 1.90758 3.34941V5.24595H0V7.73438H1.90758V13.75H4.25531V7.73438H6.00586Z" fill="#75808E"/></svg></a>
  
  <div class="uw-bf-copy-wrap">
    <button class="uw-bf-share-btn uw-bf-copy-btn" data-url="<?php echo get_permalink(); ?>" aria-label="Copy link">
      <svg width="15" height="11" viewBox="0 0 15 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.1713 5.42406C14.4955 4.18261 14.4955 2.17211 13.1713 0.930656C11.9994 -0.167977 10.1525 -0.310799 8.80488 0.592277L8.76738 0.616447C8.42988 0.842765 8.35254 1.28222 8.59394 1.59643C8.83535 1.91064 9.3041 1.98534 9.63926 1.75902L9.67676 1.73485C10.4291 1.23168 11.458 1.31078 12.1096 1.92382C12.8479 2.61596 12.8479 3.73656 12.1096 4.4287L9.47988 6.89843C8.7416 7.59057 7.54629 7.59057 6.80801 6.89843C6.1541 6.28539 6.06973 5.32079 6.60645 4.61767L6.63223 4.58251C6.87363 4.26611 6.79394 3.82665 6.45879 3.60253C6.12363 3.37841 5.65254 3.45092 5.41348 3.76513L5.3877 3.80028C4.42207 5.06152 4.57441 6.79296 5.74629 7.89159C7.07051 9.13305 9.21504 9.13305 10.5393 7.89159L13.1713 5.42406ZM0.993164 4.9099C-0.331055 6.15136 -0.331055 8.16186 0.993164 9.40331C2.16504 10.5019 4.01191 10.6448 5.35957 9.74169L5.39707 9.71752C5.73457 9.4912 5.81191 9.05175 5.57051 8.73754C5.3291 8.42333 4.86035 8.34863 4.5252 8.57494L4.4877 8.59911C3.73535 9.10229 2.70645 9.02319 2.05488 8.41015C1.3166 7.71581 1.3166 6.59521 2.05488 5.90307L4.68457 3.43554C5.42285 2.7434 6.61816 2.7434 7.35645 3.43554C8.01035 4.04858 8.09473 5.01318 7.55801 5.7185L7.53223 5.75365C7.29082 6.07006 7.37051 6.50951 7.70566 6.73363C8.04082 6.95776 8.51191 6.88525 8.75098 6.57104L8.77676 6.53588C9.74238 5.27245 9.59004 3.54101 8.41816 2.44237C7.09395 1.20092 4.94941 1.20092 3.6252 2.44237L0.993164 4.9099Z" fill="#75808E"/></svg>
      <div class="uw-bf-copy-notify">Link copied</div>
    </button>
  </div>
</div>
.uw-bf-copy-notify {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.uw-bf-copy-btn.is-copied .uw-bf-copy-notify {
  opacity: 1;
  visibility: visible;
}
document.addEventListener('click', async (event) => {
    const button = event.target.closest('.uw-bf-copy-btn');

    if (!button) {
        return;
    }

    const url = button.dataset.url;

    try {
        await navigator.clipboard.writeText(url);

        button.classList.add('is-copied');

        setTimeout(() => {
            button.classList.remove('is-copied');
        }, 2000);

    } catch (error) {
        console.error('COPY ERROR:', error);
    }    
});
Illustration of a white cloud outlined with dashed lines against a purple background, featuring a purple lock symbol in the center. The word Upwind is in the top right corner.

Top Cloud Security Frameworks: A Comparison of NIST, CIS, ISO, and CSA

<?php

$post_id = get_the_ID();
$author_terms = get_the_terms( $post_id, 'author_tax' );
$authors = [];

if ( $author_terms && ! is_wp_error( $author_terms ) ) {
    foreach ( $author_terms as $term ) {
        $photo_id = get_field(
            'author_photo',
            'author_tax_' . $term->term_id
        );

        $authors[] = [
            'name'  => $term->name,
            'url'   => get_term_link( $term->term_id ),
            'photo' => $photo_id
                ? wp_get_attachment_image_url( $photo_id, 'author-image' )
                : '',
        ];
    }
}

?>

<div class="uw-bf-card__meta">
    <?php if ( count( $authors ) > 0 ) { ?>
        <div class="uw-bf-card__author-photos">

            <?php foreach ( $authors as $author ) { ?>
                <a
                    href="<?php echo esc_url( $author['url'] ); ?>"
                    class="uw-bf-card__author-photo-link"
                >
                    <img
                        class="uw-bf-card__author-photo"
                        src="<?php echo esc_url( $author['photo'] ); ?>"
                        alt="<?php echo esc_attr( $author['name'] ); ?>"
                    >
                </a>
            <?php } ?>

        </div>
    <?php } ?>

    <div class="uw-bf-card__meta-sub">
        <span class="uw-bf-card__author-names">
            <?php echo getAuthorNames( $authors ); ?>
        </span>

        <span class="uw-bf-card__date">
            <?php echo get_the_date( 'F d, Y', $post_id ); ?>
        </span>
    </div>
</div>
.brxe-qhtnal{
  .uw-bf-card__author-photo, .uw-bf-card__author-photo-link {
  width: 53px;
  height: 53px;
}
}
It’s a challenge to stay on top of the proliferation of cloud security standards and frameworks today. In this article, we’ll cover the crucial foundations of cloud security standards, like what they are, how they differ, and what benefits and drawbacks you’ll encounter when adopting any framework. We’ll also dig deeper into the challenges that…
Read More
<?php $url = get_permalink(); ?>
<?php $title = get_the_title(); ?>

<div class="uw-bf-card__share">
  <a class="uw-bf-share-btn" href="https://www.linkedin.com/shareArticle?mini=true&url=<?php echo urlencode($url) . '&title=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on LinkedIn"><svg width="12" height="11" viewBox="0 0 12 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.51819 10.9373H0.185826V3.63501H2.51819V10.9373ZM1.35075 2.63892C0.604939 2.63892 0 2.03833 0 1.31323C5.33822e-09 0.964941 0.142311 0.630916 0.395626 0.384637C0.648942 0.138358 0.992511 0 1.35075 0C1.709 0 2.05256 0.138358 2.30588 0.384637C2.5592 0.630916 2.70151 0.964941 2.70151 1.31323C2.70151 2.03833 2.09632 2.63892 1.35075 2.63892ZM11.2475 10.9373H8.92015V7.38257C8.92015 6.5354 8.90257 5.44897 7.70751 5.44897C6.49487 5.44897 6.30904 6.36938 6.30904 7.32153V10.9373H3.97919V3.63501H6.21613V4.6311H6.24877C6.56016 4.05737 7.32079 3.4519 8.45558 3.4519C10.8161 3.4519 11.25 4.96313 11.25 6.92603V10.9373H11.2475Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://twitter.com/intent/tweet?url=<?php echo rawurlencode($url) . '&text=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on X"><svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.3319 5.92804L13.5437 0H12.3087L7.78327 5.14724L4.16883 0H0L5.46574 7.78354L0 14H1.2351L6.01406 8.56434L9.83117 14H14L8.3316 5.92804H8.3319ZM6.64026 7.85211L6.08647 7.07705L1.68013 0.909776H3.57717L7.13314 5.88696L7.68693 6.66202L12.3093 13.1316H10.4122L6.64026 7.85241V7.85211Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://www.facebook.com/sharer/sharer.php?u=<?php echo urlencode($url); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on Facebook"><svg width="7" height="14" viewBox="0 0 7 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.00586 7.73438L6.33914 5.24595H4.25531V3.63113C4.25531 2.95034 4.54641 2.28674 5.47969 2.28674H6.42703V0.168115C6.42703 0.168115 5.56734 0 4.74539 0C3.0293 0 1.90758 1.19185 1.90758 3.34941V5.24595H0V7.73438H1.90758V13.75H4.25531V7.73438H6.00586Z" fill="#75808E"/></svg></a>
  
  <div class="uw-bf-copy-wrap">
    <button class="uw-bf-share-btn uw-bf-copy-btn" data-url="<?php echo get_permalink(); ?>" aria-label="Copy link">
      <svg width="15" height="11" viewBox="0 0 15 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.1713 5.42406C14.4955 4.18261 14.4955 2.17211 13.1713 0.930656C11.9994 -0.167977 10.1525 -0.310799 8.80488 0.592277L8.76738 0.616447C8.42988 0.842765 8.35254 1.28222 8.59394 1.59643C8.83535 1.91064 9.3041 1.98534 9.63926 1.75902L9.67676 1.73485C10.4291 1.23168 11.458 1.31078 12.1096 1.92382C12.8479 2.61596 12.8479 3.73656 12.1096 4.4287L9.47988 6.89843C8.7416 7.59057 7.54629 7.59057 6.80801 6.89843C6.1541 6.28539 6.06973 5.32079 6.60645 4.61767L6.63223 4.58251C6.87363 4.26611 6.79394 3.82665 6.45879 3.60253C6.12363 3.37841 5.65254 3.45092 5.41348 3.76513L5.3877 3.80028C4.42207 5.06152 4.57441 6.79296 5.74629 7.89159C7.07051 9.13305 9.21504 9.13305 10.5393 7.89159L13.1713 5.42406ZM0.993164 4.9099C-0.331055 6.15136 -0.331055 8.16186 0.993164 9.40331C2.16504 10.5019 4.01191 10.6448 5.35957 9.74169L5.39707 9.71752C5.73457 9.4912 5.81191 9.05175 5.57051 8.73754C5.3291 8.42333 4.86035 8.34863 4.5252 8.57494L4.4877 8.59911C3.73535 9.10229 2.70645 9.02319 2.05488 8.41015C1.3166 7.71581 1.3166 6.59521 2.05488 5.90307L4.68457 3.43554C5.42285 2.7434 6.61816 2.7434 7.35645 3.43554C8.01035 4.04858 8.09473 5.01318 7.55801 5.7185L7.53223 5.75365C7.29082 6.07006 7.37051 6.50951 7.70566 6.73363C8.04082 6.95776 8.51191 6.88525 8.75098 6.57104L8.77676 6.53588C9.74238 5.27245 9.59004 3.54101 8.41816 2.44237C7.09395 1.20092 4.94941 1.20092 3.6252 2.44237L0.993164 4.9099Z" fill="#75808E"/></svg>
      <div class="uw-bf-copy-notify">Link copied</div>
    </button>
  </div>
</div>
.uw-bf-copy-notify {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.uw-bf-copy-btn.is-copied .uw-bf-copy-notify {
  opacity: 1;
  visibility: visible;
}
document.addEventListener('click', async (event) => {
    const button = event.target.closest('.uw-bf-copy-btn');

    if (!button) {
        return;
    }

    const url = button.dataset.url;

    try {
        await navigator.clipboard.writeText(url);

        button.classList.add('is-copied');

        setTimeout(() => {
            button.classList.remove('is-copied');
        }, 2000);

    } catch (error) {
        console.error('COPY ERROR:', error);
    }    
});
A vivid illustration of a red and white striped lighthouse stands on a small gray island, rising through blue waves against a light green background. "Zero-Day Attack Prevention Explained" is subtly inscribed in the top right corner, adding an intriguing layer to the tranquil scene.

Prevent Zero-Day Attacks: Proactive Strategies & Solutions

<?php

$post_id = get_the_ID();
$author_terms = get_the_terms( $post_id, 'author_tax' );
$authors = [];

if ( $author_terms && ! is_wp_error( $author_terms ) ) {
    foreach ( $author_terms as $term ) {
        $photo_id = get_field(
            'author_photo',
            'author_tax_' . $term->term_id
        );

        $authors[] = [
            'name'  => $term->name,
            'url'   => get_term_link( $term->term_id ),
            'photo' => $photo_id
                ? wp_get_attachment_image_url( $photo_id, 'author-image' )
                : '',
        ];
    }
}

?>

<div class="uw-bf-card__meta">
    <?php if ( count( $authors ) > 0 ) { ?>
        <div class="uw-bf-card__author-photos">

            <?php foreach ( $authors as $author ) { ?>
                <a
                    href="<?php echo esc_url( $author['url'] ); ?>"
                    class="uw-bf-card__author-photo-link"
                >
                    <img
                        class="uw-bf-card__author-photo"
                        src="<?php echo esc_url( $author['photo'] ); ?>"
                        alt="<?php echo esc_attr( $author['name'] ); ?>"
                    >
                </a>
            <?php } ?>

        </div>
    <?php } ?>

    <div class="uw-bf-card__meta-sub">
        <span class="uw-bf-card__author-names">
            <?php echo getAuthorNames( $authors ); ?>
        </span>

        <span class="uw-bf-card__date">
            <?php echo get_the_date( 'F d, Y', $post_id ); ?>
        </span>
    </div>
</div>
.brxe-qhtnal{
  .uw-bf-card__author-photo, .uw-bf-card__author-photo-link {
  width: 53px;
  height: 53px;
}
}
Sure, teams know they should be patching quickly. But patches aren’t always available for brand-new vulnerabilities, leaving teams to wonder whether it's practical to try to prevent these zero-day attacks. After all, zero-day attacks involve, by definition, vulnerabilities that have never been seen before and that organizations don’t know exist. We’ve already looked at what…
Read More
<?php $url = get_permalink(); ?>
<?php $title = get_the_title(); ?>

<div class="uw-bf-card__share">
  <a class="uw-bf-share-btn" href="https://www.linkedin.com/shareArticle?mini=true&url=<?php echo urlencode($url) . '&title=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on LinkedIn"><svg width="12" height="11" viewBox="0 0 12 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.51819 10.9373H0.185826V3.63501H2.51819V10.9373ZM1.35075 2.63892C0.604939 2.63892 0 2.03833 0 1.31323C5.33822e-09 0.964941 0.142311 0.630916 0.395626 0.384637C0.648942 0.138358 0.992511 0 1.35075 0C1.709 0 2.05256 0.138358 2.30588 0.384637C2.5592 0.630916 2.70151 0.964941 2.70151 1.31323C2.70151 2.03833 2.09632 2.63892 1.35075 2.63892ZM11.2475 10.9373H8.92015V7.38257C8.92015 6.5354 8.90257 5.44897 7.70751 5.44897C6.49487 5.44897 6.30904 6.36938 6.30904 7.32153V10.9373H3.97919V3.63501H6.21613V4.6311H6.24877C6.56016 4.05737 7.32079 3.4519 8.45558 3.4519C10.8161 3.4519 11.25 4.96313 11.25 6.92603V10.9373H11.2475Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://twitter.com/intent/tweet?url=<?php echo rawurlencode($url) . '&text=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on X"><svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.3319 5.92804L13.5437 0H12.3087L7.78327 5.14724L4.16883 0H0L5.46574 7.78354L0 14H1.2351L6.01406 8.56434L9.83117 14H14L8.3316 5.92804H8.3319ZM6.64026 7.85211L6.08647 7.07705L1.68013 0.909776H3.57717L7.13314 5.88696L7.68693 6.66202L12.3093 13.1316H10.4122L6.64026 7.85241V7.85211Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://www.facebook.com/sharer/sharer.php?u=<?php echo urlencode($url); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on Facebook"><svg width="7" height="14" viewBox="0 0 7 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.00586 7.73438L6.33914 5.24595H4.25531V3.63113C4.25531 2.95034 4.54641 2.28674 5.47969 2.28674H6.42703V0.168115C6.42703 0.168115 5.56734 0 4.74539 0C3.0293 0 1.90758 1.19185 1.90758 3.34941V5.24595H0V7.73438H1.90758V13.75H4.25531V7.73438H6.00586Z" fill="#75808E"/></svg></a>
  
  <div class="uw-bf-copy-wrap">
    <button class="uw-bf-share-btn uw-bf-copy-btn" data-url="<?php echo get_permalink(); ?>" aria-label="Copy link">
      <svg width="15" height="11" viewBox="0 0 15 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.1713 5.42406C14.4955 4.18261 14.4955 2.17211 13.1713 0.930656C11.9994 -0.167977 10.1525 -0.310799 8.80488 0.592277L8.76738 0.616447C8.42988 0.842765 8.35254 1.28222 8.59394 1.59643C8.83535 1.91064 9.3041 1.98534 9.63926 1.75902L9.67676 1.73485C10.4291 1.23168 11.458 1.31078 12.1096 1.92382C12.8479 2.61596 12.8479 3.73656 12.1096 4.4287L9.47988 6.89843C8.7416 7.59057 7.54629 7.59057 6.80801 6.89843C6.1541 6.28539 6.06973 5.32079 6.60645 4.61767L6.63223 4.58251C6.87363 4.26611 6.79394 3.82665 6.45879 3.60253C6.12363 3.37841 5.65254 3.45092 5.41348 3.76513L5.3877 3.80028C4.42207 5.06152 4.57441 6.79296 5.74629 7.89159C7.07051 9.13305 9.21504 9.13305 10.5393 7.89159L13.1713 5.42406ZM0.993164 4.9099C-0.331055 6.15136 -0.331055 8.16186 0.993164 9.40331C2.16504 10.5019 4.01191 10.6448 5.35957 9.74169L5.39707 9.71752C5.73457 9.4912 5.81191 9.05175 5.57051 8.73754C5.3291 8.42333 4.86035 8.34863 4.5252 8.57494L4.4877 8.59911C3.73535 9.10229 2.70645 9.02319 2.05488 8.41015C1.3166 7.71581 1.3166 6.59521 2.05488 5.90307L4.68457 3.43554C5.42285 2.7434 6.61816 2.7434 7.35645 3.43554C8.01035 4.04858 8.09473 5.01318 7.55801 5.7185L7.53223 5.75365C7.29082 6.07006 7.37051 6.50951 7.70566 6.73363C8.04082 6.95776 8.51191 6.88525 8.75098 6.57104L8.77676 6.53588C9.74238 5.27245 9.59004 3.54101 8.41816 2.44237C7.09395 1.20092 4.94941 1.20092 3.6252 2.44237L0.993164 4.9099Z" fill="#75808E"/></svg>
      <div class="uw-bf-copy-notify">Link copied</div>
    </button>
  </div>
</div>
.uw-bf-copy-notify {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.uw-bf-copy-btn.is-copied .uw-bf-copy-notify {
  opacity: 1;
  visibility: visible;
}
document.addEventListener('click', async (event) => {
    const button = event.target.closest('.uw-bf-copy-btn');

    if (!button) {
        return;
    }

    const url = button.dataset.url;

    try {
        await navigator.clipboard.writeText(url);

        button.classList.add('is-copied');

        setTimeout(() => {
            button.classList.remove('is-copied');
        }, 2000);

    } catch (error) {
        console.error('COPY ERROR:', error);
    }    
});
G-41-MITRE-Framework

MITRE ATT&CK Framework: Understanding & Leveraging for Cybersecurity

<?php

$post_id = get_the_ID();
$author_terms = get_the_terms( $post_id, 'author_tax' );
$authors = [];

if ( $author_terms && ! is_wp_error( $author_terms ) ) {
    foreach ( $author_terms as $term ) {
        $photo_id = get_field(
            'author_photo',
            'author_tax_' . $term->term_id
        );

        $authors[] = [
            'name'  => $term->name,
            'url'   => get_term_link( $term->term_id ),
            'photo' => $photo_id
                ? wp_get_attachment_image_url( $photo_id, 'author-image' )
                : '',
        ];
    }
}

?>

<div class="uw-bf-card__meta">
    <?php if ( count( $authors ) > 0 ) { ?>
        <div class="uw-bf-card__author-photos">

            <?php foreach ( $authors as $author ) { ?>
                <a
                    href="<?php echo esc_url( $author['url'] ); ?>"
                    class="uw-bf-card__author-photo-link"
                >
                    <img
                        class="uw-bf-card__author-photo"
                        src="<?php echo esc_url( $author['photo'] ); ?>"
                        alt="<?php echo esc_attr( $author['name'] ); ?>"
                    >
                </a>
            <?php } ?>

        </div>
    <?php } ?>

    <div class="uw-bf-card__meta-sub">
        <span class="uw-bf-card__author-names">
            <?php echo getAuthorNames( $authors ); ?>
        </span>

        <span class="uw-bf-card__date">
            <?php echo get_the_date( 'F d, Y', $post_id ); ?>
        </span>
    </div>
</div>
.brxe-qhtnal{
  .uw-bf-card__author-photo, .uw-bf-card__author-photo-link {
  width: 53px;
  height: 53px;
}
}
When the non-profit MITRE organization began compiling its compendium knowledge base called ATT&CK (Adversarial Tactics, Techniques, & Common Knowledge, pronounced ‘attack’) in 2013, it made cyber security attacks and vocabulary accessible free to government, enterprises, and the public looking to understand known behaviors — from the standpoint of adversarial behaviors. In this article we will…
Read More
<?php $url = get_permalink(); ?>
<?php $title = get_the_title(); ?>

<div class="uw-bf-card__share">
  <a class="uw-bf-share-btn" href="https://www.linkedin.com/shareArticle?mini=true&url=<?php echo urlencode($url) . '&title=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on LinkedIn"><svg width="12" height="11" viewBox="0 0 12 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.51819 10.9373H0.185826V3.63501H2.51819V10.9373ZM1.35075 2.63892C0.604939 2.63892 0 2.03833 0 1.31323C5.33822e-09 0.964941 0.142311 0.630916 0.395626 0.384637C0.648942 0.138358 0.992511 0 1.35075 0C1.709 0 2.05256 0.138358 2.30588 0.384637C2.5592 0.630916 2.70151 0.964941 2.70151 1.31323C2.70151 2.03833 2.09632 2.63892 1.35075 2.63892ZM11.2475 10.9373H8.92015V7.38257C8.92015 6.5354 8.90257 5.44897 7.70751 5.44897C6.49487 5.44897 6.30904 6.36938 6.30904 7.32153V10.9373H3.97919V3.63501H6.21613V4.6311H6.24877C6.56016 4.05737 7.32079 3.4519 8.45558 3.4519C10.8161 3.4519 11.25 4.96313 11.25 6.92603V10.9373H11.2475Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://twitter.com/intent/tweet?url=<?php echo rawurlencode($url) . '&text=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on X"><svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.3319 5.92804L13.5437 0H12.3087L7.78327 5.14724L4.16883 0H0L5.46574 7.78354L0 14H1.2351L6.01406 8.56434L9.83117 14H14L8.3316 5.92804H8.3319ZM6.64026 7.85211L6.08647 7.07705L1.68013 0.909776H3.57717L7.13314 5.88696L7.68693 6.66202L12.3093 13.1316H10.4122L6.64026 7.85241V7.85211Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://www.facebook.com/sharer/sharer.php?u=<?php echo urlencode($url); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on Facebook"><svg width="7" height="14" viewBox="0 0 7 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.00586 7.73438L6.33914 5.24595H4.25531V3.63113C4.25531 2.95034 4.54641 2.28674 5.47969 2.28674H6.42703V0.168115C6.42703 0.168115 5.56734 0 4.74539 0C3.0293 0 1.90758 1.19185 1.90758 3.34941V5.24595H0V7.73438H1.90758V13.75H4.25531V7.73438H6.00586Z" fill="#75808E"/></svg></a>
  
  <div class="uw-bf-copy-wrap">
    <button class="uw-bf-share-btn uw-bf-copy-btn" data-url="<?php echo get_permalink(); ?>" aria-label="Copy link">
      <svg width="15" height="11" viewBox="0 0 15 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.1713 5.42406C14.4955 4.18261 14.4955 2.17211 13.1713 0.930656C11.9994 -0.167977 10.1525 -0.310799 8.80488 0.592277L8.76738 0.616447C8.42988 0.842765 8.35254 1.28222 8.59394 1.59643C8.83535 1.91064 9.3041 1.98534 9.63926 1.75902L9.67676 1.73485C10.4291 1.23168 11.458 1.31078 12.1096 1.92382C12.8479 2.61596 12.8479 3.73656 12.1096 4.4287L9.47988 6.89843C8.7416 7.59057 7.54629 7.59057 6.80801 6.89843C6.1541 6.28539 6.06973 5.32079 6.60645 4.61767L6.63223 4.58251C6.87363 4.26611 6.79394 3.82665 6.45879 3.60253C6.12363 3.37841 5.65254 3.45092 5.41348 3.76513L5.3877 3.80028C4.42207 5.06152 4.57441 6.79296 5.74629 7.89159C7.07051 9.13305 9.21504 9.13305 10.5393 7.89159L13.1713 5.42406ZM0.993164 4.9099C-0.331055 6.15136 -0.331055 8.16186 0.993164 9.40331C2.16504 10.5019 4.01191 10.6448 5.35957 9.74169L5.39707 9.71752C5.73457 9.4912 5.81191 9.05175 5.57051 8.73754C5.3291 8.42333 4.86035 8.34863 4.5252 8.57494L4.4877 8.59911C3.73535 9.10229 2.70645 9.02319 2.05488 8.41015C1.3166 7.71581 1.3166 6.59521 2.05488 5.90307L4.68457 3.43554C5.42285 2.7434 6.61816 2.7434 7.35645 3.43554C8.01035 4.04858 8.09473 5.01318 7.55801 5.7185L7.53223 5.75365C7.29082 6.07006 7.37051 6.50951 7.70566 6.73363C8.04082 6.95776 8.51191 6.88525 8.75098 6.57104L8.77676 6.53588C9.74238 5.27245 9.59004 3.54101 8.41816 2.44237C7.09395 1.20092 4.94941 1.20092 3.6252 2.44237L0.993164 4.9099Z" fill="#75808E"/></svg>
      <div class="uw-bf-copy-notify">Link copied</div>
    </button>
  </div>
</div>
.uw-bf-copy-notify {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.uw-bf-copy-btn.is-copied .uw-bf-copy-notify {
  opacity: 1;
  visibility: visible;
}
document.addEventListener('click', async (event) => {
    const button = event.target.closest('.uw-bf-copy-btn');

    if (!button) {
        return;
    }

    const url = button.dataset.url;

    try {
        await navigator.clipboard.writeText(url);

        button.classList.add('is-copied');

        setTimeout(() => {
            button.classList.remove('is-copied');
        }, 2000);

    } catch (error) {
        console.error('COPY ERROR:', error);
    }    
});
Two stylized surfboards, one red and one blue, with fins pointing opposite directions on a light purple background. The word "upwind" appears in the top right corner, subtly hinting at the dynamic nature of SBOM format types.

Choosing the Right SBOM Format for Your Security Team

<?php

$post_id = get_the_ID();
$author_terms = get_the_terms( $post_id, 'author_tax' );
$authors = [];

if ( $author_terms && ! is_wp_error( $author_terms ) ) {
    foreach ( $author_terms as $term ) {
        $photo_id = get_field(
            'author_photo',
            'author_tax_' . $term->term_id
        );

        $authors[] = [
            'name'  => $term->name,
            'url'   => get_term_link( $term->term_id ),
            'photo' => $photo_id
                ? wp_get_attachment_image_url( $photo_id, 'author-image' )
                : '',
        ];
    }
}

?>

<div class="uw-bf-card__meta">
    <?php if ( count( $authors ) > 0 ) { ?>
        <div class="uw-bf-card__author-photos">

            <?php foreach ( $authors as $author ) { ?>
                <a
                    href="<?php echo esc_url( $author['url'] ); ?>"
                    class="uw-bf-card__author-photo-link"
                >
                    <img
                        class="uw-bf-card__author-photo"
                        src="<?php echo esc_url( $author['photo'] ); ?>"
                        alt="<?php echo esc_attr( $author['name'] ); ?>"
                    >
                </a>
            <?php } ?>

        </div>
    <?php } ?>

    <div class="uw-bf-card__meta-sub">
        <span class="uw-bf-card__author-names">
            <?php echo getAuthorNames( $authors ); ?>
        </span>

        <span class="uw-bf-card__date">
            <?php echo get_the_date( 'F d, Y', $post_id ); ?>
        </span>
    </div>
</div>
.brxe-qhtnal{
  .uw-bf-card__author-photo, .uw-bf-card__author-photo-link {
  width: 53px;
  height: 53px;
}
}
When teams are interested in SBOMs for their asset and dependency tracking, they’ll look for formats that integrate smoothly with existing CI/CD pipelines, are easy to automate, and offer minimal disruption to workflows. However, multiple teams, all with different needs, are likely to put their own stamps on SBOMs, making consistency and sharing across organizations…
Read More
<?php $url = get_permalink(); ?>
<?php $title = get_the_title(); ?>

<div class="uw-bf-card__share">
  <a class="uw-bf-share-btn" href="https://www.linkedin.com/shareArticle?mini=true&url=<?php echo urlencode($url) . '&title=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on LinkedIn"><svg width="12" height="11" viewBox="0 0 12 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.51819 10.9373H0.185826V3.63501H2.51819V10.9373ZM1.35075 2.63892C0.604939 2.63892 0 2.03833 0 1.31323C5.33822e-09 0.964941 0.142311 0.630916 0.395626 0.384637C0.648942 0.138358 0.992511 0 1.35075 0C1.709 0 2.05256 0.138358 2.30588 0.384637C2.5592 0.630916 2.70151 0.964941 2.70151 1.31323C2.70151 2.03833 2.09632 2.63892 1.35075 2.63892ZM11.2475 10.9373H8.92015V7.38257C8.92015 6.5354 8.90257 5.44897 7.70751 5.44897C6.49487 5.44897 6.30904 6.36938 6.30904 7.32153V10.9373H3.97919V3.63501H6.21613V4.6311H6.24877C6.56016 4.05737 7.32079 3.4519 8.45558 3.4519C10.8161 3.4519 11.25 4.96313 11.25 6.92603V10.9373H11.2475Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://twitter.com/intent/tweet?url=<?php echo rawurlencode($url) . '&text=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on X"><svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.3319 5.92804L13.5437 0H12.3087L7.78327 5.14724L4.16883 0H0L5.46574 7.78354L0 14H1.2351L6.01406 8.56434L9.83117 14H14L8.3316 5.92804H8.3319ZM6.64026 7.85211L6.08647 7.07705L1.68013 0.909776H3.57717L7.13314 5.88696L7.68693 6.66202L12.3093 13.1316H10.4122L6.64026 7.85241V7.85211Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://www.facebook.com/sharer/sharer.php?u=<?php echo urlencode($url); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on Facebook"><svg width="7" height="14" viewBox="0 0 7 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.00586 7.73438L6.33914 5.24595H4.25531V3.63113C4.25531 2.95034 4.54641 2.28674 5.47969 2.28674H6.42703V0.168115C6.42703 0.168115 5.56734 0 4.74539 0C3.0293 0 1.90758 1.19185 1.90758 3.34941V5.24595H0V7.73438H1.90758V13.75H4.25531V7.73438H6.00586Z" fill="#75808E"/></svg></a>
  
  <div class="uw-bf-copy-wrap">
    <button class="uw-bf-share-btn uw-bf-copy-btn" data-url="<?php echo get_permalink(); ?>" aria-label="Copy link">
      <svg width="15" height="11" viewBox="0 0 15 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.1713 5.42406C14.4955 4.18261 14.4955 2.17211 13.1713 0.930656C11.9994 -0.167977 10.1525 -0.310799 8.80488 0.592277L8.76738 0.616447C8.42988 0.842765 8.35254 1.28222 8.59394 1.59643C8.83535 1.91064 9.3041 1.98534 9.63926 1.75902L9.67676 1.73485C10.4291 1.23168 11.458 1.31078 12.1096 1.92382C12.8479 2.61596 12.8479 3.73656 12.1096 4.4287L9.47988 6.89843C8.7416 7.59057 7.54629 7.59057 6.80801 6.89843C6.1541 6.28539 6.06973 5.32079 6.60645 4.61767L6.63223 4.58251C6.87363 4.26611 6.79394 3.82665 6.45879 3.60253C6.12363 3.37841 5.65254 3.45092 5.41348 3.76513L5.3877 3.80028C4.42207 5.06152 4.57441 6.79296 5.74629 7.89159C7.07051 9.13305 9.21504 9.13305 10.5393 7.89159L13.1713 5.42406ZM0.993164 4.9099C-0.331055 6.15136 -0.331055 8.16186 0.993164 9.40331C2.16504 10.5019 4.01191 10.6448 5.35957 9.74169L5.39707 9.71752C5.73457 9.4912 5.81191 9.05175 5.57051 8.73754C5.3291 8.42333 4.86035 8.34863 4.5252 8.57494L4.4877 8.59911C3.73535 9.10229 2.70645 9.02319 2.05488 8.41015C1.3166 7.71581 1.3166 6.59521 2.05488 5.90307L4.68457 3.43554C5.42285 2.7434 6.61816 2.7434 7.35645 3.43554C8.01035 4.04858 8.09473 5.01318 7.55801 5.7185L7.53223 5.75365C7.29082 6.07006 7.37051 6.50951 7.70566 6.73363C8.04082 6.95776 8.51191 6.88525 8.75098 6.57104L8.77676 6.53588C9.74238 5.27245 9.59004 3.54101 8.41816 2.44237C7.09395 1.20092 4.94941 1.20092 3.6252 2.44237L0.993164 4.9099Z" fill="#75808E"/></svg>
      <div class="uw-bf-copy-notify">Link copied</div>
    </button>
  </div>
</div>
.uw-bf-copy-notify {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.uw-bf-copy-btn.is-copied .uw-bf-copy-notify {
  opacity: 1;
  visibility: visible;
}
document.addEventListener('click', async (event) => {
    const button = event.target.closest('.uw-bf-copy-btn');

    if (!button) {
        return;
    }

    const url = button.dataset.url;

    try {
        await navigator.clipboard.writeText(url);

        button.classList.add('is-copied');

        setTimeout(() => {
            button.classList.remove('is-copied');
        }, 2000);

    } catch (error) {
        console.error('COPY ERROR:', error);
    }    
});
Illustration of a broken red pencil on a pink background with a slight drop shadow. The pencil is split into two parts, revealing its jagged break. Hints of cloud-like shapes emphasize the vulnerability theme, and the top right corner features the word "upwind" in white text.

Master Cloud Vulnerability Management with Upwind

<?php

$post_id = get_the_ID();
$author_terms = get_the_terms( $post_id, 'author_tax' );
$authors = [];

if ( $author_terms && ! is_wp_error( $author_terms ) ) {
    foreach ( $author_terms as $term ) {
        $photo_id = get_field(
            'author_photo',
            'author_tax_' . $term->term_id
        );

        $authors[] = [
            'name'  => $term->name,
            'url'   => get_term_link( $term->term_id ),
            'photo' => $photo_id
                ? wp_get_attachment_image_url( $photo_id, 'author-image' )
                : '',
        ];
    }
}

?>

<div class="uw-bf-card__meta">
    <?php if ( count( $authors ) > 0 ) { ?>
        <div class="uw-bf-card__author-photos">

            <?php foreach ( $authors as $author ) { ?>
                <a
                    href="<?php echo esc_url( $author['url'] ); ?>"
                    class="uw-bf-card__author-photo-link"
                >
                    <img
                        class="uw-bf-card__author-photo"
                        src="<?php echo esc_url( $author['photo'] ); ?>"
                        alt="<?php echo esc_attr( $author['name'] ); ?>"
                    >
                </a>
            <?php } ?>

        </div>
    <?php } ?>

    <div class="uw-bf-card__meta-sub">
        <span class="uw-bf-card__author-names">
            <?php echo getAuthorNames( $authors ); ?>
        </span>

        <span class="uw-bf-card__date">
            <?php echo get_the_date( 'F d, Y', $post_id ); ?>
        </span>
    </div>
</div>
.brxe-qhtnal{
  .uw-bf-card__author-photo, .uw-bf-card__author-photo-link {
  width: 53px;
  height: 53px;
}
}
Cloud vulnerabilities are security weaknesses, such as misconfigurations or software bugs, that bad actors can exploit to breach or compromise cloud environments. While often viewed as less critical than a cloud security threat, vulnerabilities still require attention to proactively reduce the cloud attack surface and avoid potential breaches, such as unauthorized access. For example, if…
Read More
<?php $url = get_permalink(); ?>
<?php $title = get_the_title(); ?>

<div class="uw-bf-card__share">
  <a class="uw-bf-share-btn" href="https://www.linkedin.com/shareArticle?mini=true&url=<?php echo urlencode($url) . '&title=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on LinkedIn"><svg width="12" height="11" viewBox="0 0 12 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.51819 10.9373H0.185826V3.63501H2.51819V10.9373ZM1.35075 2.63892C0.604939 2.63892 0 2.03833 0 1.31323C5.33822e-09 0.964941 0.142311 0.630916 0.395626 0.384637C0.648942 0.138358 0.992511 0 1.35075 0C1.709 0 2.05256 0.138358 2.30588 0.384637C2.5592 0.630916 2.70151 0.964941 2.70151 1.31323C2.70151 2.03833 2.09632 2.63892 1.35075 2.63892ZM11.2475 10.9373H8.92015V7.38257C8.92015 6.5354 8.90257 5.44897 7.70751 5.44897C6.49487 5.44897 6.30904 6.36938 6.30904 7.32153V10.9373H3.97919V3.63501H6.21613V4.6311H6.24877C6.56016 4.05737 7.32079 3.4519 8.45558 3.4519C10.8161 3.4519 11.25 4.96313 11.25 6.92603V10.9373H11.2475Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://twitter.com/intent/tweet?url=<?php echo rawurlencode($url) . '&text=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on X"><svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.3319 5.92804L13.5437 0H12.3087L7.78327 5.14724L4.16883 0H0L5.46574 7.78354L0 14H1.2351L6.01406 8.56434L9.83117 14H14L8.3316 5.92804H8.3319ZM6.64026 7.85211L6.08647 7.07705L1.68013 0.909776H3.57717L7.13314 5.88696L7.68693 6.66202L12.3093 13.1316H10.4122L6.64026 7.85241V7.85211Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://www.facebook.com/sharer/sharer.php?u=<?php echo urlencode($url); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on Facebook"><svg width="7" height="14" viewBox="0 0 7 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.00586 7.73438L6.33914 5.24595H4.25531V3.63113C4.25531 2.95034 4.54641 2.28674 5.47969 2.28674H6.42703V0.168115C6.42703 0.168115 5.56734 0 4.74539 0C3.0293 0 1.90758 1.19185 1.90758 3.34941V5.24595H0V7.73438H1.90758V13.75H4.25531V7.73438H6.00586Z" fill="#75808E"/></svg></a>
  
  <div class="uw-bf-copy-wrap">
    <button class="uw-bf-share-btn uw-bf-copy-btn" data-url="<?php echo get_permalink(); ?>" aria-label="Copy link">
      <svg width="15" height="11" viewBox="0 0 15 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.1713 5.42406C14.4955 4.18261 14.4955 2.17211 13.1713 0.930656C11.9994 -0.167977 10.1525 -0.310799 8.80488 0.592277L8.76738 0.616447C8.42988 0.842765 8.35254 1.28222 8.59394 1.59643C8.83535 1.91064 9.3041 1.98534 9.63926 1.75902L9.67676 1.73485C10.4291 1.23168 11.458 1.31078 12.1096 1.92382C12.8479 2.61596 12.8479 3.73656 12.1096 4.4287L9.47988 6.89843C8.7416 7.59057 7.54629 7.59057 6.80801 6.89843C6.1541 6.28539 6.06973 5.32079 6.60645 4.61767L6.63223 4.58251C6.87363 4.26611 6.79394 3.82665 6.45879 3.60253C6.12363 3.37841 5.65254 3.45092 5.41348 3.76513L5.3877 3.80028C4.42207 5.06152 4.57441 6.79296 5.74629 7.89159C7.07051 9.13305 9.21504 9.13305 10.5393 7.89159L13.1713 5.42406ZM0.993164 4.9099C-0.331055 6.15136 -0.331055 8.16186 0.993164 9.40331C2.16504 10.5019 4.01191 10.6448 5.35957 9.74169L5.39707 9.71752C5.73457 9.4912 5.81191 9.05175 5.57051 8.73754C5.3291 8.42333 4.86035 8.34863 4.5252 8.57494L4.4877 8.59911C3.73535 9.10229 2.70645 9.02319 2.05488 8.41015C1.3166 7.71581 1.3166 6.59521 2.05488 5.90307L4.68457 3.43554C5.42285 2.7434 6.61816 2.7434 7.35645 3.43554C8.01035 4.04858 8.09473 5.01318 7.55801 5.7185L7.53223 5.75365C7.29082 6.07006 7.37051 6.50951 7.70566 6.73363C8.04082 6.95776 8.51191 6.88525 8.75098 6.57104L8.77676 6.53588C9.74238 5.27245 9.59004 3.54101 8.41816 2.44237C7.09395 1.20092 4.94941 1.20092 3.6252 2.44237L0.993164 4.9099Z" fill="#75808E"/></svg>
      <div class="uw-bf-copy-notify">Link copied</div>
    </button>
  </div>
</div>
.uw-bf-copy-notify {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.uw-bf-copy-btn.is-copied .uw-bf-copy-notify {
  opacity: 1;
  visibility: visible;
}
document.addEventListener('click', async (event) => {
    const button = event.target.closest('.uw-bf-copy-btn');

    if (!button) {
        return;
    }

    const url = button.dataset.url;

    try {
        await navigator.clipboard.writeText(url);

        button.classList.add('is-copied');

        setTimeout(() => {
            button.classList.remove('is-copied');
        }, 2000);

    } catch (error) {
        console.error('COPY ERROR:', error);
    }    
});
_What-is-CNAPP-

Understand CNAPP & its Benefits for Cloud Security

<?php

$post_id = get_the_ID();
$author_terms = get_the_terms( $post_id, 'author_tax' );
$authors = [];

if ( $author_terms && ! is_wp_error( $author_terms ) ) {
    foreach ( $author_terms as $term ) {
        $photo_id = get_field(
            'author_photo',
            'author_tax_' . $term->term_id
        );

        $authors[] = [
            'name'  => $term->name,
            'url'   => get_term_link( $term->term_id ),
            'photo' => $photo_id
                ? wp_get_attachment_image_url( $photo_id, 'author-image' )
                : '',
        ];
    }
}

?>

<div class="uw-bf-card__meta">
    <?php if ( count( $authors ) > 0 ) { ?>
        <div class="uw-bf-card__author-photos">

            <?php foreach ( $authors as $author ) { ?>
                <a
                    href="<?php echo esc_url( $author['url'] ); ?>"
                    class="uw-bf-card__author-photo-link"
                >
                    <img
                        class="uw-bf-card__author-photo"
                        src="<?php echo esc_url( $author['photo'] ); ?>"
                        alt="<?php echo esc_attr( $author['name'] ); ?>"
                    >
                </a>
            <?php } ?>

        </div>
    <?php } ?>

    <div class="uw-bf-card__meta-sub">
        <span class="uw-bf-card__author-names">
            <?php echo getAuthorNames( $authors ); ?>
        </span>

        <span class="uw-bf-card__date">
            <?php echo get_the_date( 'F d, Y', $post_id ); ?>
        </span>
    </div>
</div>
.brxe-qhtnal{
  .uw-bf-card__author-photo, .uw-bf-card__author-photo-link {
  width: 53px;
  height: 53px;
}
}
Increasingly complex cloud security threats and risks have led to a rise in cloud security tooling in recent years. However, increased tooling has also led to increased costs and manpower, leading many organizations to shift toward tool consolidation. In this article, we will dive into the rise of cloud-native application protection platforms (CNAPPs), the role…
Read More
<?php $url = get_permalink(); ?>
<?php $title = get_the_title(); ?>

<div class="uw-bf-card__share">
  <a class="uw-bf-share-btn" href="https://www.linkedin.com/shareArticle?mini=true&url=<?php echo urlencode($url) . '&title=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on LinkedIn"><svg width="12" height="11" viewBox="0 0 12 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.51819 10.9373H0.185826V3.63501H2.51819V10.9373ZM1.35075 2.63892C0.604939 2.63892 0 2.03833 0 1.31323C5.33822e-09 0.964941 0.142311 0.630916 0.395626 0.384637C0.648942 0.138358 0.992511 0 1.35075 0C1.709 0 2.05256 0.138358 2.30588 0.384637C2.5592 0.630916 2.70151 0.964941 2.70151 1.31323C2.70151 2.03833 2.09632 2.63892 1.35075 2.63892ZM11.2475 10.9373H8.92015V7.38257C8.92015 6.5354 8.90257 5.44897 7.70751 5.44897C6.49487 5.44897 6.30904 6.36938 6.30904 7.32153V10.9373H3.97919V3.63501H6.21613V4.6311H6.24877C6.56016 4.05737 7.32079 3.4519 8.45558 3.4519C10.8161 3.4519 11.25 4.96313 11.25 6.92603V10.9373H11.2475Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://twitter.com/intent/tweet?url=<?php echo rawurlencode($url) . '&text=' . urlencode($title); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on X"><svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.3319 5.92804L13.5437 0H12.3087L7.78327 5.14724L4.16883 0H0L5.46574 7.78354L0 14H1.2351L6.01406 8.56434L9.83117 14H14L8.3316 5.92804H8.3319ZM6.64026 7.85211L6.08647 7.07705L1.68013 0.909776H3.57717L7.13314 5.88696L7.68693 6.66202L12.3093 13.1316H10.4122L6.64026 7.85241V7.85211Z" fill="#75808E"/></svg></a>
  
  <a class="uw-bf-share-btn" href="https://www.facebook.com/sharer/sharer.php?u=<?php echo urlencode($url); ?>" target="_blank" rel="noopener noreferrer" aria-label="Share on Facebook"><svg width="7" height="14" viewBox="0 0 7 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.00586 7.73438L6.33914 5.24595H4.25531V3.63113C4.25531 2.95034 4.54641 2.28674 5.47969 2.28674H6.42703V0.168115C6.42703 0.168115 5.56734 0 4.74539 0C3.0293 0 1.90758 1.19185 1.90758 3.34941V5.24595H0V7.73438H1.90758V13.75H4.25531V7.73438H6.00586Z" fill="#75808E"/></svg></a>
  
  <div class="uw-bf-copy-wrap">
    <button class="uw-bf-share-btn uw-bf-copy-btn" data-url="<?php echo get_permalink(); ?>" aria-label="Copy link">
      <svg width="15" height="11" viewBox="0 0 15 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13.1713 5.42406C14.4955 4.18261 14.4955 2.17211 13.1713 0.930656C11.9994 -0.167977 10.1525 -0.310799 8.80488 0.592277L8.76738 0.616447C8.42988 0.842765 8.35254 1.28222 8.59394 1.59643C8.83535 1.91064 9.3041 1.98534 9.63926 1.75902L9.67676 1.73485C10.4291 1.23168 11.458 1.31078 12.1096 1.92382C12.8479 2.61596 12.8479 3.73656 12.1096 4.4287L9.47988 6.89843C8.7416 7.59057 7.54629 7.59057 6.80801 6.89843C6.1541 6.28539 6.06973 5.32079 6.60645 4.61767L6.63223 4.58251C6.87363 4.26611 6.79394 3.82665 6.45879 3.60253C6.12363 3.37841 5.65254 3.45092 5.41348 3.76513L5.3877 3.80028C4.42207 5.06152 4.57441 6.79296 5.74629 7.89159C7.07051 9.13305 9.21504 9.13305 10.5393 7.89159L13.1713 5.42406ZM0.993164 4.9099C-0.331055 6.15136 -0.331055 8.16186 0.993164 9.40331C2.16504 10.5019 4.01191 10.6448 5.35957 9.74169L5.39707 9.71752C5.73457 9.4912 5.81191 9.05175 5.57051 8.73754C5.3291 8.42333 4.86035 8.34863 4.5252 8.57494L4.4877 8.59911C3.73535 9.10229 2.70645 9.02319 2.05488 8.41015C1.3166 7.71581 1.3166 6.59521 2.05488 5.90307L4.68457 3.43554C5.42285 2.7434 6.61816 2.7434 7.35645 3.43554C8.01035 4.04858 8.09473 5.01318 7.55801 5.7185L7.53223 5.75365C7.29082 6.07006 7.37051 6.50951 7.70566 6.73363C8.04082 6.95776 8.51191 6.88525 8.75098 6.57104L8.77676 6.53588C9.74238 5.27245 9.59004 3.54101 8.41816 2.44237C7.09395 1.20092 4.94941 1.20092 3.6252 2.44237L0.993164 4.9099Z" fill="#75808E"/></svg>
      <div class="uw-bf-copy-notify">Link copied</div>
    </button>
  </div>
</div>
.uw-bf-copy-notify {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.uw-bf-copy-btn.is-copied .uw-bf-copy-notify {
  opacity: 1;
  visibility: visible;
}
document.addEventListener('click', async (event) => {
    const button = event.target.closest('.uw-bf-copy-btn');

    if (!button) {
        return;
    }

    const url = button.dataset.url;

    try {
        await navigator.clipboard.writeText(url);

        button.classList.add('is-copied');

        setTimeout(() => {
            button.classList.remove('is-copied');
        }, 2000);

    } catch (error) {
        console.error('COPY ERROR:', error);
    }    
});
Add the Upwind RSS Feed to Slack
Connect the Upwind RSS Feed to your Slack.
Follow the how-to here.
Threat RSS
Add the Upwind RSS Feed to Slack
Connect the Upwind RSS Feed to your Slack.
Follow the how-to here.
Main RSS