Bitbucket is a code hosting site with unlimited public and private repositories. We're also free for small teams!

Close

Overview

VMPR (Virgin Mobile PIN Randomizer) is a script for Virgin Mobile customers that changes their account PIN to a random number every few minutes. Doing this mitigates the risks posed by Virgin Mobile's extremely insecure password system in a few ways:

  • Any attempt to brute force your PIN won't get far before it changes.
  • If Virgin Mobile's support or e-mail system gets compromised somehow, your PIN will probably have changed before it can be used. This is a concern because Virgin Mobile requires customers to include their PIN in all support correspondence, even insecure channels like e-mail.
  • Similarly, if Virgin Mobile's account database is leaked, your PIN will almost certainly have changed before someone malicious can do anything with it.

Though Virgin Mobile has made some small efforts to address their security issues, they haven't done enough. Until Virgin Mobile starts taking security seriously, it's a good idea for customers to be vigilant (or switch to a different carrier).

Features

  • Runs on Linux, Windows, and Mac OS X.
  • Simple HTA-based GUI for Windows users.
  • Configurable frequency of PIN changes (defaults to every 3 minutes).
  • Can be configured to append new PINs to a file. Defaults to echoing them to stdout.
  • Since Virgin Mobile helpfully sends you a text every time your PIN changes, you can find out if it's working by simply checking your messages.

Instructions

VMPR depends on CasperJS 1.0.0-RC1 (included as a submodule) and PhantomJS 1.6.1. The Downloads page has standalone packages for Linux, Windows, and Mac OS X that include both these dependencies. Windows users should run the "vmpr.hta" script to launch the GUI, while Linux and OS X users should run the "vmpr.sh" script for the command-line interface.

Recent activity

MasonM

Commits by MasonM were pushed to MasonM/VMPR

7c33060 - Tweaks/cleanup for vmpr.hta and changed vmpr.js to echo status messages even when verbose mode is off
MasonM

Commits by MasonM were pushed to MasonM/VMPR

e162672 - Added HTA with simple GUI for Windows users
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.