How I Used A Simple Python Script to Exploit a Vulnerable Google API Key.

Gustavo Gradilla
2 min readJan 15, 2024

--

In the realm of bug bounty hunting and content discovery, uncovering publicly exposed API keys can be a goldmine for security researchers. This article delves into a Python script, named googleapiexploit.py, designed to demonstrate the impact of exploiting a vulnerability in the Google Maps Places API.

Understanding the Exploit

The script leverages the Google Maps Places API to mass fetch restaurant data from random cities. The idea behind this Proof of Concept (PoC) is to showcase the potential consequences of a publicly exposed API key.

Each time the API is called with a vulnerable key, it incurs costs for the organization. Specifically, the “Text-Search Places” function, as of the time of writing, is priced at $32 per 1000 requests (Google Maps Platform Pricing).

Installation

Step 1: Clone the Repository

git clone https://github.com/mexploit30/googleapiexploit.git

Step 2: Change to the Project Directory

cd googleapiexploit

Step 3: Install Dependencies

pip install -r requirements.txt

Usage

Running the script is straightforward. Here’s an example command:

python3 googleapiexploit.py --api-key <vulnerable_api_key> --cities 10 --threads 5
  • --api-key or -k: Specify the vulnerable Google API Key.
  • --cities or -c: Determine the number of random cities to call.
  • --threads or -t: Set the number of threads for concurrent requests (default: 5).

The script uses the default “cities.txt” file provided in the repository. You can modify this file or supply your own list, as long as it’s named “cities.txt,” and the script will import it correctly.

Feedback and Contributions

This script is a work in progress. Feel free to make suggestions for features and updates. Your input is valuable in refining the tool for better use and understanding.

Conclusion

Exploring vulnerabilities in APIs is crucial for improving overall security. The Google Maps Places API exploit script serves as a reminder of the real-world impact that can result from the exposure of sensitive information. As security enthusiasts, let’s continue to refine our tools, contribute to the community, and foster a safer digital landscape.

Linkedin: https://www.linkedin.com/in/gustavogradilla/

--

--