macOS Office Sandbox Bypasses

Reading time: 5 minutes

tip

AWS рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ:HackTricks Training AWS Red Team Expert (ARTE)
GCP рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ

Word Sandbox bypass via Launch Agents

рдпрд╣ рдПрдкреНрд▓рд┐рдХреЗрд╢рди com.apple.security.temporary-exception.sbpl рдЕрдзрд┐рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╕реНрдЯрдо рд╕реИрдВрдбрдмреЙрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдХрд╕реНрдЯрдо рд╕реИрдВрдбрдмреЙрдХреНрд╕ рдХрд┐рд╕реА рднреА рд╕реНрдерд╛рди рдкрд░ рдлрд╝рд╛рдЗрд▓реЗрдВ рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрдм рддрдХ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо ~$ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ: (require-any (require-all (vnode-type REGULAR-FILE) (regex #"(^|/)~$[^/]+$")))

рдЗрд╕рд▓рд┐рдП, рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП plist LaunchAgent рдХреЛ ~/Library/LaunchAgents/~$escape.plist рдореЗрдВ рд▓рд┐рдЦрдирд╛ рдЖрд╕рд╛рди рдерд╛ред

рдпрд╣рд╛рдВ рдореВрд▓ рд░рд┐рдкреЛрд░реНрдЯ рджреЗрдЦреЗрдВред

Word Sandbox bypass via Login Items and zip

рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдкрд╣рд▓реЗ рдХреЗ рдмрдЪрд╛рд╡ рд╕реЗ, Word рдХрд┐рд╕реА рднреА рдлрд╝рд╛рдЗрд▓ рдХреЛ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдирд╛рдо ~$ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдкрд┐рдЫрд▓реЗ рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЗ рдкреИрдЪ рдХреЗ рдмрд╛рдж /Library/Application Scripts рдпрд╛ /Library/LaunchAgents рдореЗрдВ рд▓рд┐рдЦрдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рдерд╛ред

рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рд╕реИрдВрдбрдмреЙрдХреНрд╕ рдХреЗ рднреАрддрд░ рдПрдХ Login Item (рдРрдкреНрд╕ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓реЙрдЧрд┐рди рдХрд░рдиреЗ рдкрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдВрдЧреЗ) рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпреЗ рдРрдкреНрд╕ рддрдм рддрдХ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ рдЬрдм рддрдХ рдХрд┐ рд╡реЗ рдиреЛрдЯрд░рд╛рдЗрдЬреНрдб рди рд╣реЛрдВ рдФрд░ рдЗрд╕рдореЗрдВ args рдЬреЛрдбрд╝рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ (рдЗрд╕рд▓рд┐рдП рдЖрдк рдХреЗрд╡рд▓ bash рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рд░рд┐рд╡рд░реНрд╕ рд╢реЗрд▓ рдирд╣реАрдВ рдЪрд▓рд╛ рд╕рдХрддреЗ)ред

рдкрд┐рдЫрд▓реЗ рд╕реИрдВрдбрдмреЙрдХреНрд╕ рдмрд╛рдпрдкрд╛рд╕ рд╕реЗ, Microsoft рдиреЗ ~/Library/LaunchAgents рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЗрдВ рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдЕрдХреНрд╖рдо рдХрд░ рджрд┐рдпрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдпрджрд┐ рдЖрдк Login Item рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ zip рдлрд╝рд╛рдЗрд▓ рд░рдЦрддреЗ рд╣реИрдВ рддреЛ Archive Utility рдЗрд╕реЗ рдЙрд╕рдХреЗ рд╡рд░реНрддрдорд╛рди рд╕реНрдерд╛рди рдкрд░ unzip рдХрд░ рджреЗрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдЪреВрдВрдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ ~/Library рд╕реЗ LaunchAgents рдлрд╝реЛрд▓реНрдбрд░ рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП LaunchAgents/~$escape.plist рдореЗрдВ рдПрдХ plist рдХреЛ zip рдХрд░рдирд╛ рдФрд░ ~/Library рдореЗрдВ zip рдлрд╝рд╛рдЗрд▓ рдХреЛ рд░рдЦрдирд╛ рд╕рдВрднрд╡ рдерд╛ рддрд╛рдХрд┐ рдЬрдм рдЗрд╕реЗ decompress рдХрд┐рдпрд╛ рдЬрд╛рдП рддреЛ рдпрд╣ рд╕реНрдерд╛рдпреА рдЧрдВрддрд╡реНрдп рддрдХ рдкрд╣реБрдБрдЪ рд╕рдХреЗред

рдпрд╣рд╛рдВ рдореВрд▓ рд░рд┐рдкреЛрд░реНрдЯ рджреЗрдЦреЗрдВуАВ

Word Sandbox bypass via Login Items and .zshenv

(рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдкрд╣рд▓реЗ рдХреЗ рдмрдЪрд╛рд╡ рд╕реЗ, Word рдХрд┐рд╕реА рднреА рдлрд╝рд╛рдЗрд▓ рдХреЛ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдирд╛рдо ~$ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ)ред

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдкрд┐рдЫрд▓реЗ рддрдХрдиреАрдХ рдореЗрдВ рдПрдХ рд╕реАрдорд╛ рдереА, рдпрджрд┐ рдлрд╝реЛрд▓реНрдбрд░ ~/Library/LaunchAgents рдореМрдЬреВрдж рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХреБрдЫ рдЕрдиреНрдп рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдиреЗ рдЗрд╕реЗ рдмрдирд╛рдпрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ Login Items рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдЧрдпрд╛ред

рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдлрд╝рд╛рдЗрд▓реЗрдВ .bash_profile рдФрд░ .zshenv рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреЗрд▓реЛрдб рд╣реЛ рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ zip рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╢рд┐рдХрд╛рд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ zip рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ: ~/~$escape.zipред

рдлрд┐рд░, zip рдлрд╝рд╛рдЗрд▓ рдХреЛ Login Items рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдлрд┐рд░ Terminal рдРрдкред рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдлрд┐рд░ рд╕реЗ рд▓реЙрдЧрд┐рди рдХрд░рддрд╛ рд╣реИ, рддреЛ zip рдлрд╝рд╛рдЗрд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЕрдирдЬрд┐рдк рд╣реЛ рдЬрд╛рдПрдЧреА, .bash_profile рдФрд░ .zshenv рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдЯ рдХрд░ рджреЗрдЧреА рдФрд░ рдЗрд╕рд▓рд┐рдП, рдЯрд░реНрдорд┐рдирд▓ рдЗрдирдореЗрдВ рд╕реЗ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдЧрд╛ (рдЗрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ bash рдпрд╛ zsh рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред

рдпрд╣рд╛рдВ рдореВрд▓ рд░рд┐рдкреЛрд░реНрдЯ рджреЗрдЦреЗрдВуАВ

Word Sandbox Bypass with Open and env variables

рд╕реИрдВрдбрдмреЙрдХреНрд╕ рдХрд┐рдП рдЧрдП рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рд╕реЗ рдЕрдиреНрдп рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ open рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмреБрд▓рд╛рдирд╛ рдЕрднреА рднреА рд╕рдВрднрд╡ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпреЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдБ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕реИрдВрдбрдмреЙрдХреНрд╕ рдХреЗ рднреАрддрд░ рдЪрд▓реЗрдВрдЧреАред

рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ open рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдореЗрдВ --env рд╡рд┐рдХрд▓реНрдк рд╣реИ рдЬрд┐рд╕рд╕реЗ рдПрдХ рдРрдк рдХреЛ рд╡рд┐рд╢рд┐рд╖реНрдЯ env рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрд╣ рд╕рдВрднрд╡ рдерд╛ рдХрд┐ рд╕реИрдВрдбрдмреЙрдХреНрд╕ рдХреЗ рднреАрддрд░ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ .zshenv рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИ рдЬрд╛рдП рдФрд░ open рдХрд╛ рдЙрдкрдпреЛрдЧ --env рдХреЗ рд╕рд╛рде HOME рд╡реЗрд░рд┐рдПрдмрд▓ рдХреЛ рдЙрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдП, рдЬрд┐рд╕рд╕реЗ Terminal рдРрдк рдЦреЛрд▓рд╛ рдЬрд╛рдП, рдЬреЛ .zshenv рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдЧрд╛ (рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ __OSINSTALL_ENVIROMENT рд╡реЗрд░рд┐рдПрдмрд▓ рдХреЛ рд╕реЗрдЯ рдХрд░рдирд╛ рднреА рдЖрд╡рд╢реНрдпрдХ рдерд╛)ред

рдпрд╣рд╛рдВ рдореВрд▓ рд░рд┐рдкреЛрд░реНрдЯ рджреЗрдЦреЗрдВред

Word Sandbox Bypass with Open and stdin

open рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдиреЗ --stdin рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рднреА рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ (рдФрд░ рдкрд┐рдЫрд▓реЗ рдмрд╛рдпрдкрд╛рд╕ рдХреЗ рдмрд╛рдж --env рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рдерд╛)ред

рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рднрд▓реЗ рд╣реА python Apple рджреНрд╡рд╛рд░рд╛ рд╕рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ, рдпрд╣ quarantine рд╡рд┐рд╢реЗрд╖рддрд╛ рд╡рд╛рд▓реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЗрд╕реЗ stdin рд╕реЗ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╛рд╕ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдерд╛ рддрд╛рдХрд┐ рдпрд╣ рдЬрд╛рдВрдЪ рди рдХрд░реЗ рдХрд┐ рдпрд╣ рдХреНрд╡рд╛рд░рдВрдЯрд╛рдЗрди рдореЗрдВ рдерд╛ рдпрд╛ рдирд╣реАрдВ:

  1. рдПрдХ ~$exploit.py рдлрд╝рд╛рдЗрд▓ рдЫреЛрдбрд╝реЗрдВ рдЬрд┐рд╕рдореЗрдВ рдордирдорд╛рдиреЗ Python рдХрдорд╛рдВрдб рд╣реЛрдВред
  2. open тАУstdin='~$exploit.py' -a Python рдЪрд▓рд╛рдПрдБ, рдЬреЛ Python рдРрдк рдХреЛ рд╣рдорд╛рд░реЗ рдЫреЛрдбрд╝реЗ рдЧрдП рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдЙрд╕рдХреЗ рдорд╛рдирдХ рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛рддрд╛ рд╣реИред Python рдЦреБрд╢реА-рдЦреБрд╢реА рд╣рдорд╛рд░реЗ рдХреЛрдб рдХреЛ рдЪрд▓рд╛рддрд╛ рд╣реИ, рдФрд░ рдЪреВрдВрдХрд┐ рдпрд╣ launchd рдХрд╛ рдПрдХ рдЪрд╛рдЗрд▓реНрдб рдкреНрд░реЛрд╕реЗрд╕ рд╣реИ, рдпрд╣ Word рдХреЗ рд╕реИрдВрдбрдмреЙрдХреНрд╕ рдирд┐рдпрдореЛрдВ рд╕реЗ рдмрдВрдзрд╛ рдирд╣реАрдВ рд╣реИред

tip

AWS рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ:HackTricks Training AWS Red Team Expert (ARTE)
GCP рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ