Fuzz testing with AFL++ finds bugs in C and C++ code, based on fuzzing roughly 1,000 projects over six years. Key tips: enable both ASan and UBSan together, set ASAN_OPTIONS with abort_on_error=1, halt_on_error=1 and detect_stack_use_after_return=1, and raise max_malloc_fill_size to fill allocations with a pattern past the default 4KiB, which helps detect use-after-free bugs. Prefer AFL++'s persistent mode (afl-gcc-fast, afl-clang-fast) for roughly 10x speed. Never fuzz directly on AFL++'s buffer since ASan won't catch read overflows on it; copy into a correctly sized buffer instead. Shrinking oversized fixed buffers (e.g. from 65536 to 16 bytes) helps fuzzing reach crash conditions faster.
Source: https://nullprogram.com/blog/2025/02/05. 8 Sync News only summarizes and links out; content copyright belongs to the authors and original sources.
Read the news here, practice coding, follow structured courses and train for IELTS on our sibling products — all connected through one 8 Sync account.
The ecosystem home: product overviews, blog and full pricing.
ExploreLearn along a clear roadmap: videos, auto-graded quizzes, certificates and mentors who ship for a living.
View the roadmap1,000 DSA problems in Vietnamese, auto-graded across 7 languages — many FREE, right in your browser.
Practice for freeAI grading for all four IELTS skills with detailed rubric feedback.
Try it freeA 22 MB AI IDE for Vietnamese devs.
Download freeOrganizational memory for AI agents.
ExploreAI that staffs your Fanpage and qualifies leads for you.
Try itStop Asking ChatGPT to Write Your Code. Ask It This Instead Learning to code is frustrating. Nobody warns you how frustrating. You watch the tutorials. You read the docs. You follow along with every …
Một lập trình viên đã triển khai sản phẩm web thương mại hiện đại với tính năng user accounts, Stripe payments và hệ thống search bằng ngôn ngữ C vào năm 2026. Việc lựa chọn C thay vì các framework JavaScript phổ biến như React hay VueJS giúp tối ưu hiệu năng và giảm đáng kể chi phí hosting khi xử lý hàng triệu request mỗi ngày. Dự án chứng minh rằng C hoàn toàn có thể xây dựng ứng dụng web đầy đủ tính năng khi kết hợp với công nghệ WASM (WebAssembly) để tương tác với trình duyệt và FFI (Foreign Function Interface) để tích hợp các component hệ thống. Đây là minh chứng cho xu hướng ứng dụng ngôn ngữ low-level vào web để giải quyết bài toán hiệu năng và chi phí, dù đòi hỏi kiến thức hệ thống sâu và chi phí phát triển ban đầu cao hơn.
Lập trình viên nên đọc bài này để khám phá cách ngôn ngữ C truyền thống đang định hình tương lai phát triển web hiện đại với hiệu suất vượt trội.
Blender đang tuyển dụng vị trí Software và DevOps Engineer cho các lập trình viên đam mê công nghệ 3D. Công ty cần bổ sung nhân sự để phát triển các dự án như Geometry Nodes và Blender Engine. Các ứng viên sẽ làm việc với công nghệ cụ thể như OpenGL, C++ và Python để cải thiện core functionality của phần mềm. Đây là cơ hội tốt cho những ai muốn đóng góp trực tiếp vào một dự án open-source nổi tiếng toàn cầu. Bạn sẽ được làm việc trong môi trường phát triển năng động và có tác động lớn đến cộng đồng người dùng Blender.
Bài viết này giúp lập trình viên khám phá cơ hội làm việc tại Blender, nơi họ có thể góp sức vào dự án phần mềm mã nguồn mở 3D hàng đầu thế giới.
Dự án NetWasm cho phép biên dịch C# và .NET CIL thành WebAssembly (WASM) cỡ nhỏ với WASI, sử dụng biên dịch ahead-of-time (AOT) kèm runtime và garbage collector (GC) tối ưu. Kỹ thuật này đạt hiệu quả đáng kinh ngạc với kích thước file output chỉ 1.1MB cho ứng dụng ASP.NET Core phức tạp, nhỏ hơn đáng kể so với Rust khi cùng triển khai WASM. Sự khác biệt chủ yếu đến từ cách .NET runtime được tinh chỉnh và GC được tối ưu hóa đặc biệt cho môi trường WASM. Đây là minh chứng rõ ràng cho thấy .NET có thể cạnh tranh sòng phẳng với các ngôn ngữ thường được coi là tối ưu cho WebAssembly về mặt kích thước.
Lập trình viên nên đọc bài này để biết cách tối ưu hóa kích thước WASM cho ứng dụng C#/.NET bằng NetWasm.
C++ liên tục bị các cơ quan như NSA và EU's Cyber Resilience Act đánh dấu là ngôn ngữ không an toàn về bộ nhớ. Bài phân tích ví dụ kiểm tra palindrome trên LinkedIn cho thấy nhiều vi phạm Core Guidelines và rủi ro kỹ thuật như truy cập chỉ mục không được kiểm tra. Dù được viết lại thành hàm is_palindrome() tổng quát hơn, mã vẫn không thể đảm bảo 100% an toàn. Bài viết chứng minh rằng "biên dịch và chạy được" không đồng nghĩa với "an toàn", và phần tiếp theo sẽ đề xuất giải pháp C++ hiện đại hơn.
Bài viết này giúp lập trình viên C++ nhận ra những lỗi bảo mật tiềm ẩn ngay cả trong code "đạt chuẩn" và hiểu sự khác biệt giữa code hoạt động và code an toàn.
ClickHouse phải giải quyết vấn đề memory safety khi viết extension cho Postgres bằng C/C++, do hai ngôn ngữ này không có bảo vệ tự động. Họ xử lý bằng cách thiết lập ranh giới rõ ràng giữa C và C++ code, cùng với việc sử dụng isolated helper processes. Giải pháp này giúp ngăn chặn buffer overflow và memory leak, đặc biệt quan trọng khi xử lý dữ liệu lớn. Lập trình viên nên đọc bài để hiểu cách ClickHouse quản lý memory giữa các ngôn ngữ khác nhau và áp dụng pattern này vào các dự án của mình.
Bài viết này giải quyết các thách thức về an toàn bộ nhớ khi kết hợp C và C++ cho Postgres extensions, từ ranh giới ngôn ngữ sạch sẽ đến các tiến trình trợ lý được cách ly.
The missing chapter of Hacker's Delight
EDG C++ front end vừa trở thành open source theo giấy phép Apache 2.0 với ngoại lệ LLVM, do C++ Alliance làm đối tác tài trợ. Công nghệ này đã hỗ trợ các compiler, sản phẩm bảo mật và công cụ phân tích code hàng thập kỷ qua, có khả năng phân tích mã nguồn C++ và kiểm tra quy ngôn ngữ. Giấy phép cho phép sử dụng thương mại, bao gồm cả sản phẩm độc quyền dưới các điều khoản cụ thể. EDG đã có hỗ trợ thử nghiệm cho C++26 reflection, và tập trung vào coroutine cùng có thể có LLVM back end như những lĩnh vực cộng đồng có thể đóng góp. John Spicer và đội ngũ EDG dẫn dắt quá trình chuyển đổi, với Spicer làm chủ tịch Ủy ban Tài trợ mới.
Lập trình viên nên đọc bài này để hiểu tác động của việc EDG C++ front end trở thành mã nguồn mở dưới giấy phép Apache 2.0 đối với tương lai phát triển ngôn ngữ C++.
Loading comments…