9:30
3/1/2012

Sandbox w OS X można obejść

Domyślne profile sandboksa od Apple można łatwo obejść.

Ominięcie Sandbox

Przypomnijmy, sandbox w Mac OS X umożliwia programistom na dokładne zdefiniowanie jakich zasobów i praw potrzebuje aplikacja. Niebawem Apple nie będzie przyjmował do Mac App Store aplikacji, które nie są sandboksowane.

Sandbox ma jednak błędy, które pozwalają na “wyskoczenie” z piaskownicy. Przykładowo, profil “no-network” (kSBXProfileNoNetwork) blokujący aplikacji możliwość dostępu do internetu można obejść przez wykorzystanie Open Scripting Architecture i komunikację z inną aplikacją, np. Terminalem, który wykona odpowiedni skrypt.

osascript -e 'tell application "Terminal" to do script'

Efekt: mimo, że uruchomiony przez “sandboksowaną” aplikację, Terminal nie dziedziczy restrykcji.

Podobny problem został zgłoszony Apple już w 2008 roku przez Charliego Millera.


Dowiedz się, jak zabezpieczyć swoje dane i pieniądze przed cyberprzestępcami. Wpadnij na nasz kultowy ~3 godzinny wykład pt. "Jak nie dać się zhackować?" i poznaj kilkadziesiąt praktycznych i przede wszystkim prostych do zastosowania porad, które skutecznie podniosą Twoje bezpieczeństwo i pomogą ochronić przed atakami Twoich najbliższych. Uczestnicy tego wykładu oceniają go na: 9,34/10!

Na ten wykład powinien przyjść każdy, kto korzysta z internetu na smartfonie lub komputerze, prywatnie albo służbowo. Wykład prowadzimy prostym językiem, wiec zrozumie go każdy, także osoby spoza branży IT. Dlatego na wykład możesz spokojnie przyjść ze swoimi rodzicami lub mniej technicznymih znajomych. W najbliższych tygodniach będziemy w poniższych miastach:

Zobacz pełen opis wykładu klikając tutaj lub kup bilet na wykład klikając tu.

6 komentarzy

Dodaj komentarz
  1. aplkacja, odpowidni, Efelt ?
    Sylwester dalej trzyma? :P

  2. Pytanie, czy Apple przyjmie do App Store aplikację, która z tego korzysta?

    Poza tym jeśli okaże się i zostanie im zgłoszone, że jakaś aplikacja faktycznie korzysta z tej dziury to dosyć szybko z App Store wyleci :). Co nie zmienia faktu, że do tego czasu część użytkowników może mieć przez nią problemy.

    Podejrzewam, że błąd nie jest trywialny do załatania, ciekawy jestem w jaki sposób rozwiążą dziedziczenie uprawnień przez zewnętrzną aplikację systemową (osascript).

    • Przetestowałem POC przed chwilą i tak jak się spodziewałem – otwiera on dodatkowe okno Terminala na moment, co niemal każdego zmusi do zastanowienia co jest grane, bo żadna normalna aplikacja tak się nie zachowuje :).

    • Owszem nie jest trywialny. Dziedziczenie uprawnień też ma swoje minusy ‘tell application “Finder” to open application XXXXX’ spowoduje że Finder otworzy nam aplikacje. Czyli że powinien odziedziczyć uprawnienia? Czy może nie powinien… pojawia się czy korzystanie z OSA miałoby stać się kolejnym poziomem uprawnień? Ciężko podjąć sensowną decyzję

  3. Ten sandbox to wciąż “beta” – nie bez powodu przesunęli “premierę” z listopada na marzec. Prace trwają. Inna rzecz, że już dzisiaj nie jest źle – sandbox tylko pomoże i miejmy nadzieję, że zbyt mocno nie ograniczy aplikacji

  4. “Niebawem Apple nie będzie przyjmował do Mac App Store aplikacji, które nie są sandboksowane”

    Wielki brat :)

Odpowiadasz na komentarz Mateusz

Kliknij tu, aby anulować

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.

RSS dla komentarzy: