SkyLine
  • SkyLine | Introduction
    • Module Overview
    • SkyLine's Development
    • Skyline's Reason
    • SkyLine Syntax
    • SkyLine Concepts
      • Concepts | Modes
  • SkyLine | Technologies
    • Module Overview
    • REPL
      • REPL - Basic usage
      • REPL - Console Design
      • REPL - Commands
    • SLC
      • SLC - What is it
      • SLC - Use cases
      • SLC - Lexical Analysis
      • SLC - Intro To Development
      • SLC - Error System
  • SkyLine | Theory
    • Module Overview
    • Theory | Type Systems
      • Objects | Strings
      • Objects | Integers & Floats
  • SkyLine | Development
    • Module Overview
    • Development | Hello Integers?
  • SL | Hybrid Development
    • Module Overview
    • Hybrid Projects | Advancing
    • Hybrid Projects | Wrapping
    • Hybrid Projects | Using SLC
  • SkyLine | For Abusers
    • SL Abuser | Security Research
    • SL Abuser | Module Overview
    • SL Abuser | Abusing Helps
  • SkyLine Experiments
    • Introduction To Module
      • Caster - IoT Manipulation With SkyLine
        • Caster In Real World Scenarios
          • Cracking The Grounds
        • Caster: Setting Up
        • Caster - Running Caster
        • Caster - Dev Manipulation
          • Caster - Console
          • Caster - Apple Devs
          • Caster - Amazon Devs
          • Caster - Google Devs
          • Caster - Roku Devs
      • SkyNeXt - Hacking The Skies
      • SkyLine - PwnLib
Powered by GitBook
On this page
  1. SkyLine Experiments
  2. Introduction To Module
  3. Caster - IoT Manipulation With SkyLine
  4. Caster - Dev Manipulation

Caster - Apple Devs

Enumerating Apple Devices

PreviousCaster - ConsoleNextCaster - Amazon Devs

Last updated 1 year ago

This module and series are dedicated to showing you what you can do with Apple devices such as the AppleTV. Here, we will go over various commands apart from the enumerate console module that has the apple phrase to show you what you can and can not do with this script.

Note: Apple was one of the most annoying devices to work with, do not expect information from Caster to be pretty- because just getting this data was not a pretty process.

That being said, below are some points for the commands and their flow- as well as what they do using a demonstrative output.

  • enumerate apple-serverinfo : This command will attempt to query the Apple AirPlay RTSP server for the information it uses and then attempt to highlight some basic keys that are both integers and strings. Basically, when the command runs, it makes a simple GET request to the AirPlay RTSP server, retrieves the PLIST file and uses a set of regular expressions (REGEX) to scan for specific tags. An output is shown below demonstrating this command on a 1st generation AppleTV.

  • enumerate apple-airplayinfo : When Apple devices use the AirPlay streaming service, there is a unique file that can be downloaded from the AirPlay server known as info . The issue is that this file is downloaded as a BPLIST file, also known as a Binary Property List File format which is a binary version of the XML/PLIST output shown in the very first screenshot on this page. Anyway, Caster will actually do something a bit different. SkyLine has a function built into its pwn mode that allows for Strings() which will take a file and output all printable strings which is usually useful information. When Caster downloads this file, it will string out the data, organize it, and do its very best to highlight important content!

  • enumerate apple-streaminfo: This command is a bit different but just grabs more information on the device itself. When Caster sees this command, it will make another unique request to the server and query the AirPlay stream server. This will then give Caster a very cool little PLIST file that gives you information on the stream dimensions, UUID of the device, MAC address of what can be assumed to be the device itself, and some other information. Below is an example of what the output from Caster looks like.

Page cover image