Bu yazı, Meta’nın grafik API’siyle etkileşime girerken Everstore video yüklemelerinin davranışını araştırmaktadır. Meta’nın tescilli leke depolama sistemi Everstore, video dosyaları da dahil olmak üzere çeşitli veri türlerini işler. Test yoluyla, EverStore’dan yüklenen videoların açıklanabileceği gözlendi. /me/videos
uç nokta. Yükleme işlemi sırasında bir hata mesajı almasına rağmen, video başarıyla gönderilir.
giriiş
Everstore, Fotoğraflar ve Videolar gibi içerik de dahil olmak üzere büyük ölçekli veri depolamasını yönetmek için Meta tarafından kullanılan bir blob depolama sistemidir. Facebook ve Instagram da dahil olmak üzere Meta’nın ekosisteminde hizmetleri güçlendirir ve aynı zamanda Metagen gibi dahili sistemlerin ayrılmaz bir parçasıdır. Sistem hakkında daha fazla bilgiyi semantik çoğaltma yoluyla video depolama optimizasyonu veya Everstore’daki OSDI 2014 makalesi gibi kaynaklarda öğrenebilirsiniz.
Everstore nesneleri oluşturmak, Facebook veya Instagram’a bir fotoğraf yüklerken olduğu gibi günlük kullanıcılar için yaygındır. Bu nesneler, Meta’nın gen AI sistemi Metagen’i güçlendiren altyapıda saklanır. Bununla birlikte, gerçek entrika, Metagen veya diğer dahili sistemler tarafından tüketilebilecek bir şekilde Everstore nesneleri oluşturmaya çalışırken başlar.
Daha önceki bir güvenlik raporunu inceledikten sonra, EverSTore nesneleri oluşturmanın metagen gibi altyapı yoluyla yetkisiz erişim veya açıklamaya yol açıp açmayacağına odaklandım. Soruşturmadan sonra, böyle bir senaryonun olası olmadığı sonucuna varıldı, bu da raporun bilgilendirici olarak kapatılmasına yol açtı. Ancak bu ilginç bir takip sorusu ortaya koydu: “Everstore tutamaçları oluşturabilir ve bunları bana ait olmayan nesnelere ekleyebilir miyim?
Kavram kanıtı
- İlk adım geçerli bir Everstore sapını bulmaktı. Everstore tutamağı, Everstore’da depolanan belirli bir nesne için bir tanımlayıcı görevi görür. Bir Meta çalışanının GitHub deposunun analizi sayesinde kamuya açık bir sap keşfedildi. Bu tutamaç daha sonra API isteğini test etmek için kullanıldı.
- Meta’nın hizmetlerine API çağrılarını doğrulamak için birinci taraf beyaz listeli bir erişim belirteci gereklidir. Bu jeton,
/me/videos
Kullanıcıların profillerine video yüklemelerine olanak tanıyan uç nokta. - Gerekli sorgu parametresi, https://github.com/facebook/facebook-php-business-sdk adlı eski taahhütte bulunan xpost_everstore_handle idi.
- Parametre, Access Jeton ve Everstore Tutma Elinde, bir video yüklemek için aşağıdaki sonrası istek yapıldı:
POST https://graph.facebook.com/me/videos
access_token=YOUR_ACCESS_TOKEN
xpost_everstore_handle=YOUR_EVERSTORE_HANDLE
Bu istek, EverSTore video nesnesini kimlik doğrulamalı kullanıcının profiline yüklemek için tasarlanmıştır.
API çağrısını yürüttükten sonra, yanıt şu mesajı döndürdü: “Bilinmeyen bir hata oluştu.” Bu hataya rağmen, video profile başarıyla gönderildi. Bu beklenmedik sonuç, sistem tarafından işaretlenmesine rağmen video yükleme işleminin kesintisiz tamamlandığını göstermektedir.
Gözlenen davranış, /me/videos
Endpoint, Everstore tutamaçlarını kabul edebilir ve işleyebilir, ancak bazı tutamaçların arka uçta nasıl işlendiği konusunda tutarsızlıklar vardır. Hata mesajı, muhtemelen Metagen (örneğin, günlükler veya Everpaste) gibi dahili sistemlerle bağlantılı olan belirli nesneler türlerinin, yükleme, doğrulama veya yükleme boru hattının diğer aşamalarında sorunlarla karşılaştığı arka uç işleme aşamasından kaynaklanmaktadır.
Hipotez, bazı Everstore kulplarının – başarıyla yüklenirken – son aşamalarda doğru bir şekilde işlenememesi ve hata mesajına yol açmasıdır. Bu, sistemin özel veya dahili veri nesnelerini düzgün bir şekilde işleyememesinin bir göstergesi olabilir, ancak yüklemenin kendisi etkilenmez.
Zaman çizelgesi
20 Eylül 2024 – Rapor gönderildi
11 Ekim 2024 – Meta tarafından Triated Rapor
21 Ekim 2024 – Meta tarafından verilen 5.000 $ ödül
23 Aralık 2024 – Meta tarafından düzeltmenin onaylanması