Coder Social home page Coder Social logo

5l1v3r1 / fingertec-tool Goto Github PK

View Code? Open in Web Editor NEW

This project forked from fsecurelabs/fingertec-tool

0.0 1.0 0.0 5 KB

A tool for communicating with FingerTec access control devices, as well as other ZKTeco based devices

Home Page: https://labs.mwrinfosecurity.com/blog/when-biometric-access-control-devices-get-tcpip/

License: Other

Python 100.00%

fingertec-tool's Introduction

Fingerpick

This is a tool for communicating with FingerTec access control devices, as well as other ZKTeco based devices. The options are as follows:

$ ./fingerpick.py 
usage: fingerpick.py [-h]
                     {create_user,list_users,brute_force,send_command,open_sesame}
                     ...

positional arguments:
  {create_user,list_users,brute_force,send_command,open_sesame}

optional arguments:
  -h, --help            show this help message and exit

Create User

create_user will create a new user on the target device.

$ ./fingerpick.py create_user -h
usage: fingerpick.py create_user [-h] [--user_id USER_ID]
                                 [--user_name USER_NAME] [--pin PIN]
                                 [--rfid RFID] [--commkey COMMKEY]
                                 host

positional arguments:
  host                  FingerTec Device IP address

optional arguments:
  -h, --help            show this help message and exit
  --user_id USER_ID     User ID to create. Default is 1337.
  --user_name USER_NAME
                        User name - max of 8 letters.
  --pin PIN             PIN - max of 5 characters. Default 1337.
  --rfid RFID           RFID card number.
  --commkey COMMKEY     COMM Key

List Users

list_users will list out all users currently enrolled on device.

$ ./fingerpick.py list_users -h 
usage: fingerpick.py list_users [-h] [--brute_force] [--commkey COMMKEY]
                                [--start START] [--end END]
                                host

positional arguments:
  host               FingerTec Device IP address

optional arguments:
  -h, --help         show this help message and exit
  --brute_force      Brute force comm key is necessary
  --commkey COMMKEY  COMM Key
  --start START      Start comm key id
  --end END          End comm key id

Brute Force

brute_force will brute force the COMM key (password) on the device. It will try with every key value from 1 to 99999. On an AC900, this takes about 3 days to exhaust completely.

$ ./fingerpick.py brute_force -h 
usage: fingerpick.py brute_force [-h] [--brute_force] [--start START]
                                 [--end END]
                                 host

positional arguments:
  host           FingerTec Device IP address

optional arguments:
  -h, --help     show this help message and exit
  --brute_force  Brute force comm key is necessary
  --start START  Start comm key id
  --end END      End comm key id

Send Command

send_command will send an arbitrary command to a device. This should be entered as an integer, and will be converted to little endian hex.

$ ./fingerpick.py send_command -h 
usage: fingerpick.py send_command [-h] [--commkey COMMKEY] [--fuzz FUZZ]
                                  host command data

positional arguments:
  host               FingerTec Device IP address
  command            Command (integer)
  data               Additional data (args) sent

optional arguments:
  -h, --help         show this help message and exit
  --commkey COMMKEY  COMM Key

Open Sesame

open_sesame unlocks the door for a specified amount of time.

$ ./fingerpick.py open_sesame -h  
usage: fingerpick.py open_sesame [-h] [--commkey COMMKEY] host delay

positional arguments:
  host               FingerTec Device IP address
  delay              Delay (in seconds) to keep the door open

optional arguments:
  -h, --help         show this help message and exit
  --commkey COMMKEY  COMM Key

fingertec-tool's People

Contributors

alexplaskett avatar sam-b avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.