項(xiàng)目地址
https://github.com/apache/streampipes
項(xiàng)目介紹
Apache StreamPipes 使工業(yè)數(shù)據(jù)分析變得簡單!
StreamPipes 是工業(yè)物聯(lián)網(wǎng)的端到端工具箱。它帶有針對非技術(shù)用戶的豐富的圖形用戶界面,并提供以下功能:
- ?快速連接超過 20 種工業(yè)協(xié)議,例如 OPC-UA、PLC、MQTT、REST、Pulsar、Kafka 等。
- ?使用超過 100 種算法和數(shù)據(jù)接收器創(chuàng)建數(shù)據(jù)協(xié)調(diào)和分析管道,以將數(shù)據(jù)轉(zhuǎn)發(fā)到第三方系統(tǒng)。
- ?使用數(shù)據(jù)瀏覽器通過許多為時間序列數(shù)據(jù)量身定制的小部件直觀地探索歷史數(shù)據(jù)。
- 實(shí)時儀表板,用于顯示來自數(shù)據(jù)源和管道的實(shí)時數(shù)據(jù),例如,用于車間監(jiān)控。
- StreamPipes 具有高度可擴(kuò)展性,包括一個 Java SDK 來創(chuàng)建新的管道元素和適配器。Python 支持在早期開發(fā)階段可用 - 敬請期待!管道元素是獨(dú)立的微服務(wù),可以在任何地方運(yùn)行——集中在您的服務(wù)器上或靠近邊緣。您想在實(shí)時數(shù)據(jù)上使用自己的機(jī)器學(xué)習(xí)模型嗎?只需編寫您自己的數(shù)據(jù)處理器并使其可作為管道元素重復(fù)使用。
除此之外,StreamPipes 還包括用于生產(chǎn)部署的功能:
- ?將管道、數(shù)據(jù)流和儀表板等資源分配給資產(chǎn)以實(shí)現(xiàn)更好的組織。
- ?管道和適配器的監(jiān)控和指標(biāo)。
- ?內(nèi)置用戶和訪問權(quán)限管理。
- ?導(dǎo)出和導(dǎo)入資源。
項(xiàng)目版本
0.90.0
漏洞細(xì)節(jié)
開啟REST API,雖然配置了全局 jwt 權(quán)限校驗(yàn),但是并未對用戶 token 進(jìn)行鑒別。因此普通用戶亦可使用自己 jwt 發(fā)送數(shù)據(jù)包進(jìn)行創(chuàng)建用戶,且并未對創(chuàng)建用戶歸屬的用戶組和權(quán)限進(jìn)行檢查,導(dǎo)致低權(quán)限用戶可以越權(quán)創(chuàng)建管理員賬戶。
具體分析如下:
項(xiàng)目提供了org.apache.streampipes.rest.impl#UserResource 類對用戶進(jìn)行相關(guān)操作,且實(shí)現(xiàn)了私有函數(shù)進(jìn)行檢查。
例如 updateUserAccountDetails 函數(shù)就調(diào)用了 isAdmin 進(jìn)行操作前檢查。
?文章來源:http://www.zghlxwxcb.cn/news/detail-507261.html
但創(chuàng)建用戶函數(shù) user 并未對當(dāng)前用戶及用戶傳入的權(quán)限、用戶信息、用戶組進(jìn)行檢查。導(dǎo)致可以實(shí)現(xiàn)權(quán)限繞過實(shí)現(xiàn)垂直越權(quán)。
?
漏洞利用
創(chuàng)建低權(quán)限用戶?admin@admin.com?,role 為 Pipline User,無任務(wù)界面及功能查看、點(diǎn)擊、設(shè)置權(quán)限。
?
刷新上述空白頁面,抓包獲取 jwt。
?
以該用戶權(quán)限訪問創(chuàng)建用戶鏈接,無法查看、操作任何內(nèi)容。
?
以管理員身份抓包獲取創(chuàng)建用戶創(chuàng)建數(shù)據(jù)包,刪除cookie、替換jwt為受限用戶?admin@admin.com。
?
不僅可以創(chuàng)建用戶 admin1 ,還可以創(chuàng)建帶管理員權(quán)限的用戶。
?
以越權(quán)創(chuàng)建的用戶 admin1 登錄,可以實(shí)現(xiàn)全部管理員操作。
?
修補(bǔ)方式
廠商已發(fā)布了漏洞修復(fù)程序,請使用此產(chǎn)品的用戶盡快更新至安全版本,版本升級鏈接如下:
https://streampipes.apache.org/download文章來源地址http://www.zghlxwxcb.cn/news/detail-507261.html
到了這里,關(guān)于漏洞深度分析 | Apache StreamPipes 存在權(quán)限繞過漏洞導(dǎo)致垂直越權(quán)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!