mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2025-08-21 13:53:55 -07:00
text
This commit is contained in:
parent
d5f39519a4
commit
7fb0856cdb
5 changed files with 110 additions and 9 deletions
|
@ -1,4 +1,28 @@
|
|||
# Notes on paths.
|
||||
# Notes on path
|
||||
<a id="Top"></a>
|
||||
|
||||
# Table of Contents
|
||||
- [Notes on path](#notes-on-path)
|
||||
- [Table of Contents](#table-of-contents)
|
||||
- [Installed elements](#installed-elements)
|
||||
- [Binaries](#binaries)
|
||||
- [Firmwares](#firmwares)
|
||||
- [Traces](#traces)
|
||||
- [JTAG-related stuff](#jtag-related-stuff)
|
||||
- [Proxmark3 client files: dictionaries](#proxmark3-client-files-dictionaries)
|
||||
- [Proxmark3 client files: cmd scripts](#proxmark3-client-files-cmd-scripts)
|
||||
- [Proxmark3 client files: Lua libraries and scripts](#proxmark3-client-files-lua-libraries-and-scripts)
|
||||
- [Proxmark3 client files: various resources](#proxmark3-client-files-various-resources)
|
||||
- [Documentation](#documentation)
|
||||
- [User files](#user-files)
|
||||
- [.history / log files](#history--log-files)
|
||||
- [Proxmark3 client files and traces](#proxmark3-client-files-and-traces)
|
||||
- [Searching files](#searching-files)
|
||||
- [TL;DR](#tldr)
|
||||
- [Gory details](#gory-details)
|
||||
- [Scripts](#scripts)
|
||||
- [Proxmark command script (.cmd)](#proxmark-command-script-cmd)
|
||||
- [Shebangs (on *nix)](#shebangs-on-nix)
|
||||
|
||||
|
||||
With the recent (2019-09-01) changes and creation of `make install` command it is easy to get lost.
|
||||
|
@ -6,8 +30,10 @@ With the recent (2019-09-01) changes and creation of `make install` command it
|
|||
If you install the Proxmark tools with `make install`, they will go under the prefix `/usr/local/` but if you install the tools from your distro, there are chances the path is `/usr` so you'll have to adapt the paths presented here.
|
||||
|
||||
# Installed elements
|
||||
^[Top](#top)
|
||||
|
||||
## Binaries
|
||||
^[Top](#top)
|
||||
|
||||
The main Proxmark3 executables / shellscripts will be copied to
|
||||
|
||||
|
@ -29,6 +55,7 @@ Some more executable / scripts will be copied to
|
|||
|
||||
|
||||
## Firmwares
|
||||
^[Top](#top)
|
||||
|
||||
The recovery / firmware files will be copied to
|
||||
|
||||
|
@ -41,6 +68,7 @@ The recovery / firmware files will be copied to
|
|||
|
||||
|
||||
## Traces
|
||||
^[Top](#top)
|
||||
|
||||
Proxmark3 client has a lot of sample trace files for many different low frequency tags. They will be copied to
|
||||
|
||||
|
@ -50,6 +78,7 @@ Proxmark3 client has a lot of sample trace files for many different low frequenc
|
|||
|
||||
|
||||
## JTAG-related stuff
|
||||
^[Top](#top)
|
||||
|
||||
JTAG configurations and helper scripts for OpenOCD will be copied to
|
||||
|
||||
|
@ -57,6 +86,7 @@ JTAG configurations and helper scripts for OpenOCD will be copied to
|
|||
|
||||
|
||||
## Proxmark3 client files: dictionaries
|
||||
^[Top](#top)
|
||||
|
||||
Dictionaries used by the client will be copied to
|
||||
|
||||
|
@ -76,6 +106,7 @@ if key isn't a hex number, the key is ignored.
|
|||
See [here](#proxmark3-client-files-and-traces) how to add your own dictionaries.
|
||||
|
||||
## Proxmark3 client files: cmd scripts
|
||||
^[Top](#top)
|
||||
|
||||
Cmd scripts used by the client will be copied to
|
||||
|
||||
|
@ -86,6 +117,7 @@ Cmd scripts used by the client will be copied to
|
|||
See [here](#proxmark3-client-files-and-traces) how to add your own cmd scripts.
|
||||
|
||||
## Proxmark3 client files: Lua libraries and scripts
|
||||
^[Top](#top)
|
||||
|
||||
Lua libraries and scripts used by the client will be copied to
|
||||
|
||||
|
@ -99,6 +131,7 @@ Lua libraries and scripts used by the client will be copied to
|
|||
See [here](#proxmark3-client-files-and-traces) how to add your own Lua scripts.
|
||||
|
||||
## Proxmark3 client files: various resources
|
||||
^[Top](#top)
|
||||
|
||||
Various resources used by the client will be copied to
|
||||
|
||||
|
@ -111,6 +144,7 @@ It comprises the needed files for commands like hardnested, fido, EMV, iClass.
|
|||
See [here](#proxmark3-client-files-and-traces) how to add your own resources.
|
||||
|
||||
## Documentation
|
||||
^[Top](#top)
|
||||
|
||||
Documentation will be copied to
|
||||
|
||||
|
@ -119,10 +153,12 @@ Documentation will be copied to
|
|||
```
|
||||
|
||||
# User files
|
||||
^[Top](#top)
|
||||
|
||||
The client will make use of a personal directory `~/.proxmark3` (or more precisely `$HOME/.proxmark3`)
|
||||
|
||||
## .history / log files
|
||||
^[Top](#top)
|
||||
|
||||
We have now a rolling log file, created new per day. All these logfiles and the history file are now located at
|
||||
|
||||
|
@ -132,6 +168,7 @@ We have now a rolling log file, created new per day. All these logfiles and the
|
|||
```
|
||||
|
||||
## Proxmark3 client files and traces
|
||||
^[Top](#top)
|
||||
|
||||
If you wants to add scripts, dictionaries or other resources, you can use the same structure as the installed directory structure and add your own files there, e.g.
|
||||
|
||||
|
@ -148,10 +185,12 @@ If you add a file with the same name as the file provided with the Proxmark3 ins
|
|||
See also [Scripts](#scripts) on how to write your own scripts.
|
||||
|
||||
# Searching files
|
||||
^[Top](#top)
|
||||
|
||||
With the directory structure explained above, the client applies some heuristics to find its files or the files you specified in command line.
|
||||
|
||||
## TL;DR
|
||||
^[Top](#top)
|
||||
|
||||
It adds the expected suffix if you didn't provide it yet, then it looks (by order of precedence):
|
||||
|
||||
|
@ -161,6 +200,7 @@ It adds the expected suffix if you didn't provide it yet, then it looks (by orde
|
|||
4. in the installed directory structure, so it works when installed
|
||||
|
||||
## Gory details
|
||||
^[Top](#top)
|
||||
|
||||
The client is using _searchFile_ (in _client/fileutils.c_) when calling a Proxmark3 command with a filename or when the client needs to find its files.
|
||||
_searchFile_ takes as argument a relative path *pm3dir*, a file to search and possibly a *suffix*.
|
||||
|
@ -177,11 +217,14 @@ When a user provides a filename (including possibly a path), _searchFile_ will s
|
|||
* Try to find the filename in the *pm3dir* relative to where the client binary is when in the installed configuration (*foo.dic* -> *$(path_to_dir_of_proxmark3_bin)/../share/proxmark3/dictionaries/foo.dic* which resolves to e.g. */usr/share/proxmark3/dictionaries/foo.dic* or */usr/local/share/proxmark3/dictionaries/foo.dic*), so when the client is executed from a repo workdir, filenames are searched in the expected location.
|
||||
|
||||
# Scripts
|
||||
^[Top](#top)
|
||||
|
||||
You can provide your own lua or cmd scripts.
|
||||
Look at existing scripts for ideas how to create your own scripts.
|
||||
|
||||
### Proxmark command script (.cmd)
|
||||
^[Top](#top)
|
||||
|
||||
For cmd scripts, the command line scripts, the client can run a text file containing Proxmark3 commands.
|
||||
|
||||
A samplefile could be like this.
|
||||
|
@ -210,6 +253,7 @@ You can skip the script file extension, it works equally well with.
|
|||
|
||||
|
||||
### Shebangs (on *nix)
|
||||
^[Top](#top)
|
||||
|
||||
You can also use the magic of shebangs to make an executable script, e.g. taking the example above, we can write:
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue