WebAPI/Security/TCPSocket

< WebAPI‎ | Security
Revision as of 21:51, 6 August 2012 by Ladamski (talk | contribs)

Name of API: Socket API

Reference

Brief purpose of API: Grant full access to raw sockets to allow applications such as SMTP clients etc

General Use Cases: None

Inherent threats: Malicious apps attacking internal systems (firewall bypass), local device access

Threat severity: High

Regular web content (unauthenticated)

Use cases for unauthenticated code: None

Authorization model for normal content: None

Authorization model for installed content: None

Potential mitigations:N/A

Privileged (approved by app store)

Use cases: Talk to non-HTTP services. SSH, FTP, mail clients, supporting custom protocols

Authorization model: Implicit

Potential mitigations:

  • Firewall should prohibit access to privileged low number OS ports (<1024).
  • Listening on a port < 1024 should be prohibited.
  • Specify hosts/ports in the manifest, permissions granted implicitly. user can modify permissions?

Certified (system-critical apps)

  • Use cases: Open a connection to any domain/port
  • Authorization model: Implicit
  • Potential mitigations: specify hosts/ports in the manifest, permissions granted implicitly and not able to be revoked (unless device is in developer mode)