크래프트 Jul 12, 2026 at 11:177북마크에 추가

Cloudflare는 Rust 생태계의 HTTP/1 crate인 hyper에서 경쟁 조건 버그를 발견했습니다. 특정 타이밍 조건에서 큰 응답이 조용히 잘릴 수 있었습니다 - 200 OK, 본문 잘림. 상위 버전으로 수정하세요.
간단히 말해.
Rust 스택 전체에서 사용되는 HTTP/1 라이브러리
200 OK를 보내면서도 오류를 발생시키지 않았습니다. Cloudflare가 발견하여 패치하고 공개했습니다.InfoQ에 따르면 (2026-07-12), Cloudflare 팀은 hyper의 HTTP/1 구현에서 드문 레이스 컨디션을 문서화하고 수정했습니다. 수년간 존재했던 이 버그는 매우 정밀한 타이밍 조건에서만 발생했으며, 응답이 중간에 끊어지면서도 200 OK 상태를 반환했습니다. 패치는 업스트림으로 적용되었고, 공지는 게시되었습니다.
세 가지 중요한 점. 첫째, Cloudflare 규모에서는 시간적 우연이 버그가 됩니다—논리가 아닙니다. 둘째, Cloudflare가 수년간의 버그를 중앙 라이브러리에서 격리하고 수정할 수 있었다는 사실은 Rust가 네트워크 계층에 정착한 이유를 다시 한 번 상기시켜줍니다—코드의 가독성이 버그의 재현성을 강제합니다. 셋째, Cloudflare 규모의 운영자만이 이를 발견할 수 있었습니다. 이것이 오픈 소스의 공유와 혜택의 대가입니다.
Axum, Actix, reqwest에서 사용 중인 hyper 버전—패치의 전파에는 몇 주가 걸릴 것입니다.
결론. HTTP/1은 결코 끝나지 않았습니다. Rust 여부와 관계없이 인터넷과 통신하는 서버는 보이지 않는 경쟁의 장이며, 200 OK는 본문이 도착했음을 보장하지 않습니다.
인공지능이 작성하고 사람의 편집 감독하에 검수한 기사입니다.
Un bug comme ça montre qu'on peut rater des trucs même avec des tests. Content que Cloudflare l'ait repéré avant qu'il fasse plus de dégâts.
Est-ce que ce bug a pu toucher d'autres implémentations HTTP/1 ou c'est spécifique à hyper ?
Curieux, on se demande depuis combien de temps ce bug passait inaperçu.
Difficile à dire, mais des bugs comme ça, ça traîne souvent sans qu'on les remarque.
Un bug comme ça, ça rappelle l'importance des tests pour les systèmes critiques. Est-ce que ça peut nuire à la confiance dans Rust pour les applications sensibles ?
Super trouvaille ! Je me demande comment ça affecte la performance et la fiabilité en production.
Ce bug prouve qu'aucun langage n'est infaillible. J'espère que le correctif est bien testé.
J'espère que ce bug n'a pas trop impacté les utilisateurs de Cloudflare. Ça doit être important de savoir à quel point c'était grave.