Saturday, July 20, 2024

System outage 7/19


What?

Yday, Microsoft experienced a global outage due to an issue with CrowdStrike's Falcon Sensor software, causing widespread disruptions and triggering the 'Blue Screen of Death' on Windows PCs.

Computers with Mac and Linux operating systems were not impacted, and CrowdStrike said the incident was not caused by a cyberattack.

Who?

CEO George Kurtz, said the system was sent an update, and that update had a software bug in it and caused an issue with the Microsoft operating system

Cybersecurity programs like CrowdStrike’s frequently and automatically update themselves to account for new tactics that malicious hackers have discovered. And there’s always a slight risk that any software update will be incompatible with other programs.

Why?

Logical system flow is depicted in the given diagram.

Where?

In computing, memory is organized as a large array of numbers, often represented in hexadecimal (base 16) for simplicity.

The patch attempted to read memory address 0x9c (156 in decimal), which is an invalid memory region. Any program that tries to read from this region is immediately terminated by Windows, as shown in the stack dump image.  Programmatically, it was caused by a NULL pointer reference in the code.

The affected code was part of a system driver, which has privileged access to the system hardware. When such a driver crashes, the operating system must immediately crash to protect the system, causing the infamous Blue Screen of Death (BSOD).

How?

CrowdStrike immediately published workaround steps for individual hosts and cloud environment at their portal https://www.crowdstrike.com/blog/statement-on-falcon-content-update-for-windows-hosts/

5 years ago, importance of null pointer handler was inked at https://medium.com/trimble-maps-engineering-blog/nullable-business-value-91c31df8f20d 




Wednesday, July 17, 2024

Godmother of AI


Dr. Fei-Fei Li, the renowned computer scientist known as the "godmother of AI", who has created a startup World Labs. In just four months, its already valued at more than $1 billion as per Financial Times

As Princeton University alumni, shared her vision for artificial intelligence (AI) 25 years ago. "This is a profound technology that will change human civilization" Li said from the same stage Albert Einstein discussed his theory of relativity in 1921. 

Li headed AI at Google Cloud from 2017 to 2018 and currently advises the White House task force on AI.

In a Ted Talk in April, Li further explained the field of research her startup will work on advancing, which involves algorithms capable of realistically extrapolating images and text into three-dimensional environments and acting on those predictions, using a concept known as "spatial intelligence" 

This could bolster work in various fields such as robotics, augmented reality, virtual reality, and computer vision. If these capabilities continue to advance in the ambitious ways Li plans, it has the potential to transform industries like healthcare and manufacturing.

The investment in World Labs reflects a trend where venture capitalists eagerly align themselves with ambitious AI companies, spurred by the surprise success of OpenAI’s ChatGPT, which rapidly achieved a valuation exceeding $80 billion.

Sunday, July 14, 2024

Wiz acquisition


Google said to acquire cybersecurity startup Wiz for $23 billions, marking its biggest acquisition ever.

Wiz was founded in 2020 by the ex-Microsoft Azure security team (Assaf Rappaport, Ami Luttwak, Yinon C. & Roy R.) They had previously sold their business Adallom to Microsoft for $320Mn in 2015 after which they joined. 

After seeing first-hand the difficulty large companies faced to manage cloud security threats, co-founders raised $100Mn to start Wiz "to secure everything you Build and Run in the Cloud."

💰Wiz Funding timeline: 

  • Series A (2020) - $100Mn (led by Index, Sequoia, Cyberstarts)
  • Series B (2021)- $130Mn @ $1.7Bn valuation (led by Advent International) 
  • Series B extension (2021) - $120Mn (led by Salesforce / Blackstone) 
  • Series C (2021) - $250Mn @ $6Bn valuation (led by Insight & Greenoaks)
  • Series D (2023) - $300Mn @ $10Bn valuation (led by Lightspeed, Greenoaks, Index)
  • Series E (2024) - $1Bn @ $12Bn valuation (led by A16Z, Lightspeed & Thrive Capital) 

If this deal goes through, at $23 billions, it will be nearly double Google’s previous largest acquisition (of Motorola in 2011 for $12.5 billions) 

Friday, July 5, 2024

Sumologic isnotnull



This week encountered issue with the isnotnull() function in Sumo Logic. Its possible there was a misunderstanding or a mistake in the usage or context of the function.  Sumo Logic uses different syntax or methods to filter or check for null or existing fields.

To filter logs that have a specific field, such as ensuring logs contain a message field, typically usage of a query that implicitly checks for the presence of the field without directly using an isnotnull() function. 

Here's how it might adjust the query to ensure only working with logs that contain a message field:

_sourceCategory=yourSourceCategory
| json "message" as Message
| where !isNull(Message)

On receiving an error regarding isnotnull() or any function's existence, it might be due to a typo, case sensitivity, or Sumo Logic may not support the function as described. 

The correct function to use in Sumo Logic for checking if a field is not null is !isNull().

Wednesday, June 26, 2024

Sumologic vs Braze


Sumo Logic and Braze Event Logs serve different purposes within the data management and analytics space:

Sumo Logic:

  • Purpose: Sumo Logic is primarily a cloud-native platform designed for real-time operational and security insights. It provides comprehensive log management and analytics capabilities to monitor, troubleshoot, and secure applications and infrastructure.
  • Key Features:
    • Log Management: Aggregates log data from various sources for analysis.
    • Real-Time Monitoring: Provides real-time dashboards and alerts.
    • Security Analytics: Helps detect and respond to security threats.
    • Operational Intelligence: Analyzes operational data to improve system performance and reliability.
  • Use Cases: Ideal for IT operations, DevOps, and security teams needing to manage and analyze large volumes of log data in real time.

Braze Event Logs:

  • Purpose: Braze is a customer engagement platform that helps brands manage and analyze customer interactions and behaviors. Braze Event Logs track user activities and events to provide insights into customer engagement and campaign performance.
  • Key Features:
    • Customer Interaction Tracking: Logs events such as app usage, campaign interactions, and user behaviors.
    • Campaign Analytics: Provides insights into the effectiveness of marketing campaigns.
    • User Segmentation: Allows for the segmentation of users based on behavior and interaction data.
    • Personalization: Enables personalized messaging and experiences based on event data.
  • Use Cases: Ideal for marketing, product, and customer success teams focused on enhancing customer engagement and optimizing marketing campaigns.

Comparison Summary:

  • Focus: Sumo Logic is focused on IT operations, security, and infrastructure monitoring, while Braze Event Logs are centered on customer engagement and marketing analytics.
  • Functionality: Sumo Logic offers powerful log management and operational intelligence capabilities, whereas Braze provides tools for tracking and analyzing customer interactions to drive personalized marketing efforts.

Friday, June 21, 2024

Angular browser cache clean

This week, had an interesting learning whilst web product launch using latest Angular framework

If the browser cache is not cleared after deploying a new version of your Angular application, users might experience issues such as:

  • Stale Content: Users may see old versions of your application, causing inconsistencies if the new version contains critical updates.
  • Missing Files: The new deployment might reference files (like JavaScript or CSS) that have changed or no longer exist, causing 404 errors.
  • Unexpected Behavior: JavaScript and CSS changes might not reflect, leading to broken functionality or layout issues.


There are Top-5 technical solutions to avoid browser cache clearance
  1. Cache Busting: Angular CLI automatically handles cache busting by appending a unique hash to the filenames of built assets. Ensure production build as ng build --prod
  2. Service Worker: Implement Angular PWA (Progressive Web App) with service workers to manage cache effectively. ng add @angular/pwa Configure the ngsw-config.json file to control caching strategies.
  3. HTTP Headers: Configure your server to set appropriate caching headers. This can force the browser to always fetch the latest version of your files.{   add_header Cache-Control "max-age=31536000, public"; }
  4. Versioning: Use versioning in your file names or paths to ensure that users receive the updated files.<script src="main.v1.2.3.js"></script>
  5. Client-Side Cache Control: Programmatically clear the cache on the client side using JavaScript when a new version is detected.
    if ('serviceWorker' in navigator) Unknown macro: {  navigator.serviceWorker.getRegistrations().then((registrations) =>Unknown macro}); }

Saturday, June 15, 2024

ECS environment


In an Amazon ECS task definition, the environment parameter is used to define environment variables that are passed to the container at runtime. 

Environment variables are key-value pairs that can be used to configure the behavior of the containerized application without changing the application code. 

"containerDefinitions": [{

"name": "my-microservice-container",
"image": "my-microservice:latest",
"environment": [
{
   "name": "DATABASE_URL",
   "value": "mysql://username:password@hostname:3306/dbname"
},
{
   "name": "API_KEY",
   "value": "your_api_key_here"
},
{
   "name": "LOG_LEVEL",
   "value": "debug"
}]
}]

 

As said above, a list of environment variables to set in containerDefinitions/environment.

Purposes of Environment Variables:

Configuration Management: You can use environment variables to configure the application, such as setting the application mode (development, testing, production), configuring logging levels, or setting feature flags.

1. Secrets Management: Environment variables can be used to pass sensitive information like database credentials, API keys, and other secrets to the application. However, for enhanced security, consider using AWS Secrets Manager or AWS Systems Manager Parameter Store to manage sensitive data.

2.Operational Parameters: You can define various operational parameters, like memory limits, thread counts, or other runtime configurations that the application might need.

3. Service Endpoints: Environment variables can be used to specify the URLs or endpoints of other services that the application needs to communicate with.

4. Feature Toggles: You can use environment variables to enable or disable features within your application dynamically without changing the code.