Aller au contenu principal

Rechercher sur CooLWJ

选择搜索范围,输入关键词后按回车。

Langue

CVE-2023-28432 Erreur d’identification des versions concernées par la vulnérabilité de divulgation d’informations de MinIO

J’ai récemment reçu du service de sécurité une alerte concernant une vulnérabilité de MinIO

image.png

À première vue, cette vulnérabilité semble vraiment critique ; il faut la corriger sans tarder.

Je me suis donc attelé à la mise à niveau.

Tout d’abord, vérifions que la version de MinIO utilisée est 2021-03-26T00:00:41Z 

Cette version a été choisie parce qu’elle est distribuée sous Apache License 2.0 ,c’est la dernière version de MinIO utilisable gratuitement à des fins commerciales sans devoir publier le code source.

Après cette version, MinIO a changé sa licence pour l’AGPL V3.

Selon le rapport, cette vulnérabilité

Versions affectées confirmées : RELEASE.2019-12-17T23-16-33Z <= MinIO < RELEASE.2023-03-20T20-16-18Z

Version corrigée : RELEASE.2023-03-20T20-16-18Z

La version que nous utilisons actuellement fait partie des versions concernées.

Comme la version que nous utilisons est trop ancienne, nous n’osons pas passer à une nouvelle version majeure.

J’ai donc envisagé de télécharger moi-même le code source et d’appliquer un correctif à partir des portions de code divulguées dans le rapport.

// minio/cmd/bootstrap-peer-server.go

func (b *bootstrapRESTServer) VerifyHandler(w http.ResponseWriter, r *http.Request) {  ctx := newContext(r, w, "VerifyHandler")  cfg := getServerSystemCfg()  logger.LogIf(ctx, json.NewEncoder(w).Encode(&cfg)) }

// minio/cmd/bootstrap-peer-server.go

func getServerSystemCfg() ServerSystemConfig {  envs := env.List("MINIO_")  envValues := make(map[string]string, len(envs))  for _, envK := range envs {    // ignorer certaines variables d’environnement dans le cadre    // de la liste blanche et pourrait être configuré    // diffère selon les nœuds, mettre à jour skipEnvs()    // effectuer le mappage si de telles valeurs d’environnement existent    if _, ok := skipEnvs[envK]; ok { continue    }    envValues[envK] = env.Get(envK, "")  }  return ServerSystemConfig{    MinioEndpoints: globalEndpoints,    MinioEnv:       envValues,  } }

Pourtant, après avoir téléchargé le code source et basculé sur la branche de la version que nous utilisons, j’ai constaté que cette version ne contenait pas le code figurant dans le rapport

func (b *bootstrapRESTServer) VerifyHandler(w http.ResponseWriter, r *http.Request) {
    ctx := newContext(r, w, "VerifyHandler")
    cfg := getServerSystemCfg()
    logger.LogIf(ctx, json.NewEncoder(w).Encode(&cfg))
    w.(http.Flusher).Flush()
}
func getServerSystemCfg() ServerSystemConfig {
    return ServerSystemConfig{
       MinioPlatform:  fmt.Sprintf("OS: %s | Arch: %s", runtime.GOOS, runtime.GOARCH),
       MinioEndpoints: globalEndpoints,
    }
}

Oh là là, que se passe-t-il ? Que se passe-t-il ?Que se passe-t-il ?

D’après le rapport, un outil de vérification permet de confirmer cette vulnérabilité.https://github.com/MzzdToT/CVE-2023-28432

Après téléchargement et exécution du code de vérification de la vulnérabilité, les résultats montrent que la version que nous utilisons n’est pas affectée.

image.png

Je commence alors à soupçonner une erreur dans la plage de versions indiquée par le rapport, et je compare donc le code source de MinIO

1.jpg

La comparaison du code révèle que la première version ayant effectivement introduit ce défaut est RELEASE.2021-08-31T05-46-54Z

Je ne peux toujours pas confirmer si mon hypothèse est correcte ; je commence à chercher l’avis concernant cette vulnérabilité sur le site officiel de MinIO 

https://github.com/minio/minio/security/advisories/GHSA-6xvq-wj2x-3h3q

image.png

La vérité est enfin connue de tous, l’équipe officielle de MinIO a indiqué les bonnes versions affectées

Versions concernées

RELEASE.2021-08-31T05-46-54Z

Versions corrigées

RELEASE.2023-03-20T20-16-18Z

La version que nous utilisons ne figure pas parmi les versions concernées.

Après cet incident, j’ai recherché de nombreux articles.

Ah, chez les fournisseurs chinois de solutions de sécurité aussi, chacun copie l’autre.

Cet article 

https://cloud.tencent.com/developer/article/2315008 

Plagiat  

https://www.h3c.com/cn/d_202304/1830808_30003_0.htm

Cet article

https://www.h3c.com/cn/d_202304/1830808_30003_0.htm 

Encore du plagiat

 https://github.com/minio/minio/security/advisories/GHSA-6xvq-wj2x-3h3q

En plus, il a recopié la mauvaise version, quelle galère !


Je vais maintenant publier les liens des articles que j’ai trouvés : ce sont tous des arnaqueurs, et je vais les étriller sans pitié, même après coup

https://stack.chaitin.com/techblog/detail/62


https://mp.weixin.qq.com/s/JgskenAZ6Cpecoe2k2AEjQ


https://blog.nsfocus.net/miniocve-2023-28432/


https://www.freebuf.com/vuls/363647.html


https://cloud.tencent.com/developer/article/2315008


https://www.h3c.com/cn/d_202304/1830808_30003_0.htm


https://zone.huoxian.cn/d/2708-cve-2023-28432-minio/17


https://www.cve.org/CVERecord?id=CVE-2023-28432





Commentaires

Envoi en cours

Choisissez votre thème

Le thème s’applique à tout le site.