
Product
Introducing Tier 1 Reachability: Precision CVE Triage for Enterprise Teams
Socket’s new Tier 1 Reachability filters out up to 80% of irrelevant CVEs, so security teams can focus on the vulnerabilities that matter.
Python 3 package to extract google home devices local authentication tokens from google servers. These local authentication tokens are needed to control Google Home devices (See @rithvikvibhu's Google Home (2.0) API).
Please note: Once you have local google authentication tokens they only live about 1 day long. After that you will need to obtain new ones. You will probably need to run the script repeatedly storing the tokens somewhere convenient.
Note: the package was written and tested on Python 3.
Using uv:
$ uv add glocaltokens
Using pip:
$ pip install glocaltokens
Use in your program as (see examples folder for detailed example):
from glocaltokens.client import GLocalAuthenticationTokens
# Using google username and password
#
# ONLY CALL THIS ONCE
#
# If you call this too often, google will disconnect your android devices and other weird things will happen
#
# Call get_google_devices_json() afterwards to get timers/alarms as oftens as you want to update.
client = GLocalAuthenticationTokens(
username="<YOUR_GOOGLE_USERNAME>",
password="<YOUR_GOOGLE_PASSWORD>"
)
# Get master token
print("[*] Master token", client.get_master_token())
# Get access token (lives 1 hour)
print("\n[*] Access token (lives 1 hour)", client.get_access_token())
# Get google device local authentication tokens (live about 1 day)
print("\n[*] Google devices local authentication tokens")
google_devices = client.get_google_devices_json()
# You can also select specific models to select when calling get_google_devices or get_google_devices_json with the models_list parameter.
# For example, we have pre-defined a constant with some Google Home Models (WARNING! Not all of them may be present)
# This could be used this way
from glocaltokens.const import GOOGLE_HOME_MODELS
google_devices_select = client.get_google_devices_json(GOOGLE_HOME_MODELS)
# But if you need to select just a set of models, or add new models, you can use a list of str
google_devices_select_2 = client.get_google_devices_json([
f"Google Home",
f"Google Home Mini",
f"Google Nest Mini",
])
There are some pre-defined models list in scanner.py
, feel free to
add new lists, or add models to a list with a pull-request.
GOOGLE_HOME_MODELS
:Never store the user's password nor username in plain text, if storage is necessary, generate a master token and store it. Example approach:
from glocaltokens.client import GLocalAuthenticationTokens
# Using google username and password first, and only once
client = GLocalAuthenticationTokens(
username="<YOUR_GOOGLE_USERNAME>",
password="<YOUR_GOOGLE_PASSWORD>"
)
# Get master token
master_token = client.get_master_token()
print("[*] Master token", master_token)
"""Now store master_token somewhere"""
See Contributing guidelines. This is an open-source project and all countribution is highly welcomed.
Much credits go to @rithvikvibhu for doing most of the heavy work like finding a way to extract master and access tokens (See his gist here).
Also, thank you very much to the guys at pychromecast
which provided the code required to scan devices in the network.
FAQs
Tool to extract Google device local authentication tokens in Python
We found that glocaltokens demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket’s new Tier 1 Reachability filters out up to 80% of irrelevant CVEs, so security teams can focus on the vulnerabilities that matter.
Research
/Security News
Ongoing npm supply chain attack spreads to DuckDB: multiple packages compromised with the same wallet-drainer malware.
Security News
The MCP Steering Committee has launched the official MCP Registry in preview, a central hub for discovering and publishing MCP servers.