read: fail

OpenBSD 개발자가 분석한 최근의 xz 사태에 대한 명쾌한 요약

최근 xz 5.6.05.6.1 버전에는 Linux x86-64 시스템에만 영향을 미치는 백도어가 포함되어 있었습니다. 이 백도어는 빌드 과정에 여러 단계의 난독화와 특정 플랫폼에서만 악성 코드를 실행하는 검사를 통해 숨겨져 있었으며, 특정 RSA 공개 키를 가진 SSH 연결에 의해 활성화되었습니다. 이 문서는 기술적 분석을 통해 백도어가 어떻게 구현되고 숨겨졌는지에 대한 세부 사항에 초점을 맞춥니다.

FizzBee -- 파이썬에서의 모델 검사기

FizzBee는 모든 가능한 행동과 복잡한 상호작용을 탐색하여 시스템이 예상대로 작동하는지 확인하는 모델 검사기입니다. 파이썬과 유사한 명령형 스타일의 쉬운 사양 언어를 사용하며, 성능 특성(예상 대기 시간, 처리량, 가용성 SLA 등)을 모델링할 수 있는 확률적 모델 검사기를 제공합니다.

xz 문제는 오픈 소스가 아니다

최근 xz 소프트웨어의 백도어 문제는 오픈 소스 소프트웨어(FLOSS)만의 문제가 아니라고 주장합니다. 소프트웨어 개발 관행, 기업의 부주의, 비용 절감, 아웃소싱 등이 더 큰 문제일 수 있습니다. 오픈 소스 모델이 해결책을 제공하며, 사용자가 문제를 해결할 수 있는 능력을 준다고 합니다.

Convex 작동 원리

Convex는 개발자들이 백엔드 인프라에 대한 걱정 없이 '그냥 만들기'를 가능하게 하는 백엔드 플랫폼입니다. 데이터베이스 내에서 애플리케이션 코드를 직접 실행하는 Convex 배포, 효율적인 쿼리를 위한 인덱스, 그리고 동시성과 경쟁 상태를 처리하는 트랜잭션 등이 핵심 구성 요소입니다. Convex는 안전한 재시도와 정확한 구독을 위해 함수 실행을 샌드박싱하고 결정론적으로 만듭니다.

파이어폭스 보안을 신속하게 강화하다

모질라는 오픈하고 안전한 웹을 믿으며 전 세계 파이어폭스 사용자의 보안을 개선하기 위해 노력합니다. 최근, Pwn2Own 해킹 대회에서 발견된 취약점을 21시간 이내에 수정하는 등, 긴급한 보안 이슈 발견 시 신속하게 대응합니다. 모질라는 보안 연구자들이 파이어폭스를 더 안전하게 만들 수 있도록 버그 바운티 프로그램을 통해 협력을 요청합니다.

위대한 테이블의 디자인 철학

이 문서는 고대 수메르 점토판부터 현대의 스프레드시트 소프트웨어에 이르기까지 데이터를 표현하는 방법으로서 테이블의 역사와 진화를 탐구합니다. 특히, 20세기 '미드센추리 모던' 시기를 테이블 디자인의 정점으로 강조하며, 컴퓨팅의 발전으로 인해 발생한 도전과제를 극복하기 위한 해결책으로 'Great Tables' 파이썬 패키지를 제안합니다. 이 패키지는 아름답고 기능적인 테이블을 만드는 데 도움을 줍니다.

HTTP/2 CONTINUATION 플러드: 기술적 세부 사항

2023년 10월, 작가는 HTTP/2 Rapid Reset 공격을 알게 되었고, 이는 지금까지의 가장 큰 DDoS 공격으로 불렸습니다. 이를 계기로 HTTP/2 보안에 대해 더 깊이 탐구하기 시작했습니다. HTTP/2의 주요 차이점은 바이너리 프로토콜이라는 점과, CONTINUATION 플러드 취약점이 많은 주요 HTTP/2 서버 구현에서 발견되었다는 점입니다. 이 취약점은 인터넷 안전에 심각한 위험을 초래했으며, CERT/CC가 취약점 조정 사례를 열어 책임감 있게 공개한 것에 대해 작가는 기쁩니다.

Unstract(AGPL) – LLM 기반 API로 비구조화된 문서를 구조화하는 새로운 플랫폼 출시

Unstract는 LLM(대규모 언어 모델)을 사용하여 비구조화된 문서를 구조화하는 노코드 플랫폼입니다. 사용자는 API와 ETL 파이프라인을 쉽게 구축할 수 있으며, 복잡한 문서에서 필요한 필드를 추출하는 Prompt Studio와 같은 주요 기능을 제공합니다. 시작하기 위한 자세한 문서와 커뮤니티 지원도 강점입니다.

불변성과 일관성 없음에 대하여

이 블로그 포스트는 '알고리즘 퍼즐' 책의 퍼즐들을 프로그램 정확성의 관점에서 분석합니다. 불변성(불)일관된 명세의 유용성을 보여주는 것이 목표입니다. 또한, 프로그램 정확성을 입증하기 위한 불변성 찾기의 중요성과 일관성 없는 명세로 인한 도전을 강조합니다.

V8 (힙) 샌드박스

V8 샌드박스는 메모리 손상이 샌드박스 내에서만 제한되도록 V8의 힙 메모리를 격리하는 것을 목표로 합니다. 이는 공격자가 힙 기반 취약점을 이용해 임의의 읽기/쓰기 접근을 통한 권한 상승을 방지합니다. 샌드박스의 성능 오버헤드는 대체로 1% 이하로, 호환 가능한 플랫폼에서 기본적으로 활성화됩니다. 메모리 안전성을 향한 중요한 발걸음입니다.

CHERIoT과 공급망

CHERI와 CHERIoT는 공급망 공격과 같은 위협으로부터 보호하며, 제3자 코드의 두려움 없는 재사용을 가능하게 하는 소프트웨어 스택의 분할을 구축하는 기반을 제공합니다. 이들은 메모리 안전성컴파트먼트 간의 격리 및 상호작용을 통해 보안을 강화합니다.

안전한 애플리케이션 구축: Cerbos와 Microsoft Entra에서 배우는 인증 및 권한 부여에 대한 핵심 인사이트

인증은 사용자의 신원을 확인하는 첫 번째 방어선이며, 권한 부여는 인증된 사용자가 할 수 있는 일을 결정합니다. Cerbos와 Microsoft의 협력은 이러한 보안 조치를 선택하고 구현할 때의 이론적 근거와 실용적 고려 사항을 보여줍니다. 이 문서는 인증과 권한 부여의 중요성과 구별되는 역할을 강조하며, 이 분야의 전문가들에게 깊이 있는 탐구를 권장합니다.

내 스타트업을 버그 때문에 팔았다: 이 서버리스 저장소를 알았더라면

2021년, Linvo라는 LinkedIn 자동화 도구를 만든 저자는 좋은 수익을 올렸지만, 높은 운영 비용과 기술적 문제로 인해 대부분의 돈을 잃었습니다. Winglang이라는 도구를 알았더라면, 클라우드 인프라 문제를 해결할 수 있었을 것이라고 후회합니다. 이제 저자는 기술, 오픈소스, 마케팅에 초점을 맞춘 새로운 YouTube 채널을 시작했습니다.

Pandoc을 이용한 링크를 각주로 변환하기 (간단한 방법)

이 글에서는 Pandoc, 인기 있는 문서 변환 도구를 사용하여 링크를 각주로 쉽게 변환하는 방법을 소개합니다. Haskell 도구 체인 없이도 가능한 Lua 필터를 이용한 해결책을 제시하며, 사용자가 쉽게 따라 할 수 있는 단계별 가이드를 제공합니다.

루이스 필폴드와 함께하는 글림 1.0 - 소프트웨어 언스크립티드

이 에피소드에서는 리처드가 Go 백엔드 엔지니어이자 boot.dev의 창립자인 레인 와그너와 대화를 나눕니다. Go의 디자인함수형 프로그래밍의 역할에 대해 토론하며, Go가 신뢰성 있고 효율적이며 확장 가능한 시스템을 구축하기 위한 실용적인 언어로 설계되었다는 점을 강조합니다.

TPM 2.0 입문 과정

TPM 2.0을 이해하기 위한 짧은 과정으로, 예제와 연습을 통해 TPM2_Tools 사용법을 배울 수 있습니다. 리눅스 VM에 Git을 사용해 TPMCourse 저장소를 설치하고, TPM 시뮬레이터가 포함된 Docker 컨테이너를 구축하여 사용합니다. 실제 TPM이 아닌 시뮬레이터와 함께 작동하도록 설계되었으며, 실제 TPM 사용 시 주의가 필요합니다.

logfmtxx: C++23 구조화된 로깅 라이브러리

C++23을 위한 헤더-온리 구조화된 로깅 라이브러리, logfmtxx를 소개합니다. 프로젝트에 include/logfmtxx.hpp를 복사하거나 Shipp를 사용해 의존성에 추가하기만 하면 됩니다. 간단하고 효율적인 로깅 솔루션을 찾고 계시다면 주목하세요!

선형 CPS 연결 언어에서의 슬립과 슬러프

이 기사는 S₀라는 어셈블리 언어로 사용되는 선형, 연속 전달, 연결 언어인 Swanson에 대해 논의합니다. 특히, S₀의 문법을 덜 고통스럽게 만들기 위해 도입된 새로운 연산자인 '슬립''슬러프'에 초점을 맞춥니다. 이 두 연산자는 코드를 더 읽기 쉽고 간결하게 만들어 줍니다.

조디악 킬러의 340자 암호 해결

조디악 킬러의 340자 암호가 드디어 해결됐어요! 이 미스터리한 사건은 수십 년 동안 많은 사람들의 호기심을 자극했죠. 이제 그 비밀이 밝혀졌습니다!

PostgreSQL에서 일대일 관계 설계하기

데이터베이스 설계에서 일대일 관계는 흔하지만, 구현하기는 항상 간단하지 않습니다. 추가 데이터를 저장하는 두 가지 주요 방법과 진정한 일대일 관계를 강제하는 몇 가지 접근 방식을 소개합니다. 특히, '관계를 소유한' 테이블에 외래 키를 저장하는 방법이 추천되지만, 완벽하지는 않습니다. 일관된 접근 방식을 선택하고 유지하는 것이 중요합니다.