Spring的nohttp宣言:消滅http://
我很高興地宣佈nohttp專案,尋找任何方法試圖完全替換http://的使用。
背景
今天,Jonathan Leitschuh發表了一篇名為“ 想要接管Java生態系統 ”的部落格?[url=https://medium.com/@jonathan.leitschuh/want-to-take-over-the-java-ecosystem-all-you-need-is-a-mitm-1fc329d898fb]你需要的只是一個MITM![/url]。該部落格演示了數百個Java庫正在透過HTTP下載依賴項。這將導致潛在的MITM(中間人)攻擊。
不幸的是,有多個Spring專案使用HTTP來下載依賴項。幸運的是,我們沒有發現MITM攻擊成功的跡象。我們還解決了這個問題,以確保將來不會發生MITM攻擊。
Spring團隊反應
Spring Team非常重視安全性。由於發現有Spring專案透過HTTP下載依賴項,我們已採取措施確保將來不會發生MITM攻擊。最明顯的變化是更新Maven儲存庫位置以使用HTTPS。但是,我們透過在所有地方切換到使用HTTPS(幾乎)來進一步採取這一措施。
現在是2019年,我們要確定刪除HTTP的使用!使用HTTPS 快速,簡單且免費提供,沒有理由繼續使用HTTP!作為開發人員,重要的是我們幫助世界過渡到任何地方都使用HTTPS(甚至靜態站點需要HTTPS)。
我們當然不是唯一試圖消除HTTP使用的人。我們形成了加密,使HTTPS免費,自動化和開放。Chrome已更新其UI以指示HTTP不安全。Maven Central已棄用HTTP。名單還在繼續。
用HTTPS替換HTTP
Spring團隊竭盡全力更新所有URL以使用HTTPS。這包括從Maven儲存庫URL到Apache許可證到文件連結的所有內容。在某些情況下,無法使用HTTPS。例如,我們連結的某些站點不支援HTTPS,XML名稱空間識別符號必須與文件中的識別符號匹配,依此類推。
透過Classpath的HTTPS XML位置
在我們消除HTTP使用的努力中,Spring Framework 已經更新,以解析透過類路徑使用HTTPS位置的XML位置。以前,這僅適用於使用HTTP的URL。請考慮以下XML配置:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd"> |
https://www.springframework.org/schema/beans/spring-beans.xsdURL透過類路徑,而不需要網路連線解決。
請注意,XML名稱空間名稱(識別符號)無法更改為使用HTTPS。從能夠實施安全控制的角度來看,這並不理想,但從不透過網路請求名稱,因此對使用者幾乎沒有任何傷害。
基礎設施更新
Spring團隊已更新所有主機以確保使用HTTPS。每個站點都支援HTTPS,重定向到HTTPS,並使用嚴格傳輸安全性。
潛在的MITM意味著我們的構建基礎架構可能已經受到損害。為此,我們重新構建了所有構建基礎架構並輪換了所有憑據。
新的安全控制
雖然對安全事件做出反應很重要,但安全控制措施到位也很重要,以確保問題不再發生。
我們更新了構建框以阻止HTTP流量,以確保不會再發生這種情況。為了保護開發人員和使用者,我們建立了nohttp專案。此專案可用於查閱,替換和阻止http://的使用,同時務實允許允許無法更改的URL(例如XML名稱空間名稱)。有關其他詳細資訊,請參閱專案的站點。
相關文章
- 消滅 Java 程式碼的“壞味道”Java
- 消滅又臭又長的if-else
- 挖礦病毒消滅記二
- 新的《敏捷宣言》 - Magno敏捷
- 谷歌想用Chrome的力量消滅網址,它能做到嗎?谷歌Chrome
- 如何優雅的消滅掉react生命週期函式React函式
- 漫話:如何給女朋友解釋滅霸的指響並不是真隨機"消滅"半數宇宙人口的?隨機
- 消滅噴子人人有責 如何打造更加健康的遊戲社群遊戲
- 磁場消滅癌細胞,是一種新的抗癌方案嗎?
- 消滅毛刺!HBase2.0全鏈路offheap效果拔群
- App Store一週遊戲榜:《消滅病毒》霸佔榜首APP遊戲
- 程式碼重構之道:消滅冗長的if語句,提升程式碼質量
- 為了消滅遊戲的載入時間,人們都做了哪些努力?遊戲
- 蘋果FoundationDB事務宣言蘋果
- Spring HTTP invoker (spring框架中的一個遠端呼叫模型)SpringHTTP框架模型
- 只佔地球總生物量0.01%的人類消滅了83%的哺乳動物
- WebClient: Spring的新的HTTP反應式客戶端 - spring.ioWebclientSpringHTTP客戶端
- Spring MVC能響應HTTP請求的原因?SpringMVCHTTP
- 踢掉 FB+PL:Apache 的開源激進宣言?Apache
- 消滅 Bug!推薦5款測試員不可不知的bug管理工具!
- 從“消滅病毒”到“我的小家”,開發者需要借鑑這些爆款打造方式!
- HDC.Cloud 2021|飛機的“黑色十分鐘”能被人工智慧消滅嗎?Cloud人工智慧
- 使用Spring Boot的消費者驅動合同Spring Boot
- 敏捷宣言及原則(中英對照)敏捷
- 團隊宣言及專案設想
- 十、Spring Boot整合Spring Security之HTTP請求授權Spring BootHTTP
- spring 整合kafka監聽消費SpringKafka
- GSMA:歐洲移動行業宣言2030行業
- 《消滅病毒》後,藍飛互娛能否憑《兩座城池》再度一鳴驚人?
- 《Narita Boy》GI 評測 7.75 分:消滅邪惡程式碼,拯救數字王國
- 格力不滅的手機夢
- 《毀滅戰士》的誕生
- 程式的誕生到滅亡
- 劉慈欣談AI:人類若生活在科技的安樂窩裡,終將會被“消滅”!AI
- 十分鐘實現滅霸打響指灰飛煙滅的效果
- Spring Mvc Http 400 Bad Request問題排查SpringMVCHTTP
- Spring Cloud Stream如何消費自己生產的訊息?SpringCloud
- 軟體定義交付宣言(Software Defined Delivery Manifesto)