The CrowdStrike outage is a stark reminder of how much of our code, and our world, fundamentally runs on C/C++ An out-of-bounds memory read error which is easily mitigated in higher level programming languages via automatic bounds checks and garbage collection, has to be consciously accounted for in C/C++. Never the less, C/C++ is critical and will continue to be critical to much of our world - to those of us that write code in C/C++ please use tools like AddressSanitizer, enable compiler warnings, and perform thorough code reviews and testing to prevent these type of situations from manifesting! Much respect and support to all the teams globally working on mitigating the fallout of this issue 🙏🙏🙏 #CyberSecurity #Programming #SoftwareEngineering
Archimydes’ Post
More Relevant Posts
-
Software Engineer @Restroworks 👨💻 | Transforming Ideas into Code 🚀 | Engineering Innovator | Content Creator | IIIT Sonepat '24 💡✨
🚨 𝐖𝐡𝐚𝐭 𝐄𝐱𝐚𝐜𝐭𝐥𝐲 𝐇𝐚𝐩𝐩𝐞𝐧𝐞𝐝 𝐰𝐢𝐭𝐡 𝐭𝐡𝐞 𝐂𝐫𝐨𝐰𝐝𝐒𝐭𝐫𝐢𝐤𝐞 𝐎𝐮𝐭𝐚𝐠𝐞? 🚨 It started with a programmer error. A CrowdStrike developer made a mistake in their C++ code. They created a pointer (Obj* obj) that was supposed to point to an object in memory but ended up being NULL—pointing to nothing. The issue? The code tried to use this NULL pointer to access the object's data without checking its validity. Imagine trying to look inside a box that isn't there. When the code attempted to access the object's members, it used invalid memory addresses. Specifically, it tried to read from 0x9c, a region of memory it shouldn't touch. Because this was a system driver, which have high-level access to the OS, Windows immediately recognized the threat and crashed the system to prevent further damage—hence the infamous Blue Screen of Death (BSOD). This incident highlights the critical need for rigorous code checks and modern programming practices. Switching to more memory-safe languages like Rust could prevent such errors in the future. Credits: Zach Vorhies #ThePrimeagen #Tech #Windows #CrashAnalysis #SoftwareEngineering #CyberSecurity #Programming #C++ #Rust #DevOps
To view or add a comment, sign in
-
-
Software Engineer at AT&T | Ex-SWE-ll at JPMC | Java | SpringBoot | C# | .Net | React | Angular | AWS |
The #CrowdStrike Outage The recent #CrowdStrike outage was caused by a Null Pointer Exception. Here’s a concise breakdown: - A developer made a mistake in the C++ code. - A pointer variable was created but remained NULL, not pointing to any valid memory location. - The code attempted to use this null pointer without checking if it was NULL . - The null pointer pointed to "nothing." When the code tried to access member variables (like `obj->a`), it attempted to read from an invalid memory address. - Windows detected this invalid memory access as a security threat and crashed the program, resulting in a Blue Screen of Death (BSOD) and the outage. The code tried to access non existent memory, which resulted in a system crash as a safety measure. Credits: https://lnkd.in/ezARkJHd #Programming #CodingErrors #C++ #Security #NullPointer
To view or add a comment, sign in
-
Low-code and no-code platforms are a double edge sword. On the one hand, non-technical employees can build applications with minimal coding knowledge. There could be security issues if unregulated by an IT department. https://lnkd.in/eCx6EiVh #AlphaSoftware #LowCode #Security
To view or add a comment, sign in
-
-
Crowdstrike incident / Blue screen of death incident (BSOD) in 2 minutes --------- Crazy right ? But this is the real world, where if things go wrong the impact at times could be of global scale ! So what went wrong ? Let's summarize in bullet points : - It was a code written in C++ - C++ isn't a memory safe programming language making it vulnerable to such scenarios - A forced system driver related update was pushed by Crowdstrike causing the updated system driver to access a not-to-be-accesed memory address causing the system to cause a crash That's all about what happened.. But what could've been done to prevent this ? - Usage of address sanitizers before pushing updates could've helped in preventing this - Usage of Rust over C++ Now, your task is to tell me in the comments why Rust is better than C++ for such scenarios ? Follow me for similar latest tech news, updates and useful content ! Stay tuned ! #crowdstrike #bsod #globalbsod #crowdstrikebsod
To view or add a comment, sign in
-
🚨What Went Wrong at #CrowdStrike? An Inside Look at the Recent Outage Ever wondered how a small coding mistake can lead to a major system crash? Here's a quick breakdown of what happened with the #CrowdStrike outage: =>Developer Error: A #CrowdStrike developer made a mistake in C++ code. => Null Pointer Issue: A pointer variable (Obj* obj) was created but remained NULL due to the error. =>Lack of Null Check: The code didn't check if the pointer was NULL before using it. =>Invalid Memory Access: Attempted to access data through the NULL pointer, leading to an invalid memory address. =>System Protection Trigger: Windows identified the invalid access as a security risk, resulting in a Blue Screen of Death (BSOD) and the outage. Lesson Learned: Always ensure your code handles NULL pointers to avoid such critical errors! Credit: Thanks to Zach Vorhies and Rahul Raj for the analysis. Source: https://lnkd.in/g5BZKx6G #CodingErrors #SystemOutage #Programming #C++ #microsoft #outage #crowdstrike #windows #softwareengineer #engineering
To view or add a comment, sign in
-
Trend Micro Zero Day Initiative Day Initiative (ZDI) Vulnerability Researcher Piotr Bazydło published the final piece in a series of four blogs covering Microsoft Exchange bugs he discovered after the ProxyNotShell bugs were patched. These findings are an extension of the research he presented at OffensiveCon 2024. CVE-2022-41040 and CVE-2022-41082 addressed the Exchange ProxyNotShell chain. That exploit allowed any authenticated Exchange user to achieve remote code execution. This final post describes the PowerShell Remoting “ConvertViaNoArgumentConstructor” conversion mechanism. This research allowed him to find 3 more vulnerabilities, even after the Exchange PowerShell attack surface had been significantly hardened by switching to a strict allow list of types - More information can be found here; #ZDI #TrendMicro #exchange #powershell
Zero Day Initiative — Exploiting Exchange PowerShell After ProxyNotShell: Part 4 – No Argument Constructor
zerodayinitiative.com
To view or add a comment, sign in
-
🎯 Day 7 of #WorkinPublic. Today's challenge on HackerRank Variable Sized Arrays 🚀 Today, I tackled a problem that adds a twist to arrays – variable-sized ones! 📚 In this challenge, I had to manage multiple arrays of different lengths and efficiently query them for specific elements. 🔍 Here’s what I did: 1️⃣ Created multiple arrays with varying sizes. 2️⃣ Efficiently accessed the desired elements using given queries. 3️⃣ Practiced dynamic memory allocation to handle arrays of different sizes. 🧠 #BuildinPublic #CPP #CPlusPlus #HackerRank #CodingJourney #ProblemSolving
To view or add a comment, sign in
-
-
🔒𝐏𝐫𝐨𝐣𝐞𝐜𝐭: 𝐂𝐢𝐩𝐡𝐞𝐫𝐒𝐚𝐟𝐞🔑 I've recently built a Password Storage application that emphasizes security and ease of use. This project leverages 𝐀𝐄𝐒-𝟏𝟐𝟖 𝐞𝐧𝐜𝐫𝐲𝐩𝐭𝐢𝐨𝐧 𝐯𝐢𝐚 𝐭𝐡𝐞 𝐅𝐞𝐫𝐧𝐞𝐭 𝐦𝐨𝐝𝐮𝐥𝐞 in python to ensure that user credentials are stored securely, and Firebase for robust user authentication. 🔒 𝐊𝐞𝐲 𝐅𝐞𝐚𝐭𝐮𝐫𝐞𝐬: Secure Storage: All passwords are encrypted with strong keys using AES-128 through Fernet module in Python. User-Friendly Interface: A clean, intuitive UI built with React, making password management straightforward. Responsive Design: The application is designed to be functional across all devices. Authentication: Google Sign-In integration and email id ensures a secure login experience. 𝐅𝐞𝐞𝐥 𝐟𝐫𝐞𝐞 𝐭𝐨 𝐜𝐡𝐞𝐜𝐤 𝐨𝐮𝐭 𝐭𝐡𝐞 𝐩𝐫𝐨𝐣𝐞𝐜𝐭: 𝐋𝐢𝐯𝐞 𝐃𝐞𝐦𝐨: https://lnkd.in/g-DzfBC9 𝐆𝐢𝐭𝐇𝐮𝐛 𝐑𝐞𝐩𝐨𝐬𝐢𝐭𝐨𝐫𝐲: https://lnkd.in/gMa6U-Cj #CyberSecurity #Python #React #Encryption #WebApp #MongoDB #Firebase #PasswordEncryption React
CipherSafe
password-app-frontend.vercel.app
To view or add a comment, sign in
-
Cloud & Datacenter Specialist (Pre-sales / Operations) | Cloud & Security Consultant | Driving Innovation & Efficiency
Consider limiting access to the VSCode tunnel domains '.tunnels.api.visualstudio[.]com' or '.devtunnels[.]ms' to users with a valid business requirement. Notice that these domains are legitimate and are not malicious, but limiting access to them will prevent the feature from working properly and consequently make it less attractive for threat actors #SecurityAwareness #VisualStudio #Microsoft
Microsoft VS Code Undermined in Asian Spy Attack
darkreading.com
To view or add a comment, sign in
-
https://lnkd.in/gMgdZdsn Checkout BOFHound's new LDAP parsing capabilities and SigFinder's binary authentication signature scanning. Learn how Shielder's analysis of ASUS routers impacts real-world security and explore the use of BOF Launcher for varied programming environments.
Check out BOFHound's new LDAP parsing capabilities and SigFinder's binary authentication signature scanning. Learn how Shielder's analysis of ASUS routers impacts real-world security and explore the …
haq.news
To view or add a comment, sign in