Termineter is a python Smart Meter Security Testing framework which allows authorised individuals to test Smart Meters for vulnerabilities such as energy consumption fraud, network hijacking, and more.
Many of these vulnerabilities have been highlighted by the media and advisories have been sent out by law enforcement agencies. The goal of a public release for this utility is to promote security awareness for Smart Meters and provide a tool that brings basic testing capabilities to the community and meter manufacturers so that security can be improved.
Power companies can use the framework to identify and validate internal flaws that leave them susceptible to fraud and significant vulnerabilities.
How it WorksTerminter utilises the C1218 and C1219 protocols for communication over an optical interface. Currently supported are Meters using C1219-2007 with 7-bit character sets.
This is the most common configuration found in North America. Termineter communicates with Smart Meters via a connection using an ANSI type-2 optical probe with a serial interface.
Users must have general knowledge of the meter’s internal workings in order to use Termineter proficiently.
Usage termineter [-h] [-v] [-L {DEBUG,INFO,WARNING,ERROR,CRITICAL}][-r RESOURCE_FILE] -h, --helpshowthis helpmessageand exit -v, --versionshowprogram's version number and exit -L {DEBUG,INFO,WARNING,ERROR,CRITICAL}, --log {DEBUG,INFO,WARNING,ERROR,CRITICAL} setthelogginglevel -r RESOURCE_FILE, --rc-fileRESOURCE_FILE execute a resourcefile Modules brute_force_login Brute Force Credentials dump_tables Dump Readable C12.19 Tables From The Device To A CSV File enum_tables Enumerate Readable C12.19 Tables From The Device get_info Get Basic Meter Information By Reading Tables get_log_info Get Information About The Meter’s Logs get_modem_info Get Information About The Integrated Modem get_security_info Get Information About The Meter’s Access Control read_table Read Data From A C12.19 Table run_procedure Initiate A Custom Procedure set_meter_id Set The Meter’s I.D. set_meter_mode Change the Meter’s Operating Mode write_table Write Data To A C12.19 TableYou can download Termineter here:
termineter-v0.2.6.zip
Or you can read more here .