mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2025-01-07 00:28:07 +08:00
120 lines
3.4 KiB
Markdown
120 lines
3.4 KiB
Markdown
# Notes on paths.
|
|
|
|
|
|
With the recent (2019-09-01) changes and creation of _make install_ command it is still easy to get lost.
|
|
|
|
We are adapting the client to use searchFile when creating or calling a Proxmark3 command with a filename.
|
|
Here is where it tries to find the file and in which precedense order it takes.
|
|
|
|
|
|
#
|
|
```
|
|
/usr/share/proxmark3
|
|
/usr/local/share/proxmark3
|
|
```
|
|
|
|
## binary paths
|
|
This is where the Proxmark3 executable / shellscripts will be copied to.
|
|
```
|
|
/usr/share/proxmark3/bin
|
|
/usr/local/share/proxmark3/bin
|
|
```
|
|
|
|
This is where the tools executable / scripts will be copied to
|
|
```
|
|
/usr/share/proxmark3/tools
|
|
/usr/local/share/proxmark3/tools
|
|
```
|
|
executables: mfkey32, mfkey32v2, mfkey64, nonce2key,
|
|
scripts: pm3_eml2lower.sh, pm3_eml2upper.sh, pm3_mfdread.py, pm3_mfd2eml.py, pm3_eml2mfd.py, findbits.py, rfidtest.pl, xorcheck.py
|
|
|
|
## JTAG stuff
|
|
This is where JTAG configurations will be copied to
|
|
```
|
|
/usr/share/proxmark3/jtag_openocd
|
|
/usr/local/share/proxmark3/tools/jtag_openocd
|
|
```
|
|
|
|
# Traces
|
|
Proxmark3 client has a lot of sample trace files for many different low frequency tags. They will be copied to
|
|
```
|
|
/usr/share/proxmark3/traces
|
|
/usr/local/share/proxmark3/traces
|
|
```
|
|
|
|
|
|
# Firmware paths
|
|
This is where the recovery / firmware files will be copied to.
|
|
bootrom.elf, fullimage.elf, proxmark3_recovery.bin (used for JTAG), sim011.bin, sim011.sha512.txt
|
|
```
|
|
/usr/share/proxmark3/firmware
|
|
/usr/local/share/proxmark3/firmware
|
|
```
|
|
|
|
## User given paths
|
|
```
|
|
~/.proxmark3/
|
|
./
|
|
```
|
|
|
|
## Proxmark3 client essential files
|
|
```
|
|
/resources
|
|
/dictionaries
|
|
/lualibs
|
|
/luascripts
|
|
/cmdscripts
|
|
```
|
|
|
|
## seaching for a file
|
|
First instance where a file is found will be used in the client.
|
|
|
|
1. share (install paths)
|
|
2. $HOME/.proxmark3 (user home directory
|
|
3. ./ (current working directory)
|
|
|
|
## .history / log files
|
|
We have now a rolling log file, created new per day. All those logfiles and the .history file is found
|
|
```
|
|
~/.proxmar3/history.txt
|
|
~/.proxmar3/log_%Y%m%d.txt
|
|
```
|
|
|
|
## What is where?
|
|
/resources
|
|
The needed files for commands like hardnested, fido, EMV, iClass.
|
|
|
|
/dictionaries
|
|
Here you find the default dictionaries or your own used for commands like `hf mf chk`, `hf mf fchk`, `lf t55xx chk`
|
|
A dictionary file is a text based file with one key per line in hexdecimal form.
|
|
The length of the key is decided by the Proxmark3 client for the different commands. All chars afterwards on line is ignored.
|
|
if key isn't a hex number, the key is igonored.
|
|
|
|
- t55xx, Mifare Ultralight/NTAG - uses 4 hexbytes (11223344)
|
|
- Mifare classic uses 6 hexbytes (112233445566)
|
|
- iClass uses 8 hexbytes (1122334455667788)
|
|
|
|
/luascripts
|
|
Here you find existing lua scripts available, or where you put your own custom lua scripts. Look at existing scripts for ideas how to create your own scripts.
|
|
|
|
/lualibs
|
|
Here is the supporting lua libraries used for lua scripts. basically reused functions in a lua file like converting string to hex etc.
|
|
|
|
/cmdscripts
|
|
Here you find the proxmark3 client command line scripts. The client can run a text file containing Proxmark3 commands.
|
|
|
|
a samplefile could be like this.
|
|
```
|
|
$> cat myscript.cmd
|
|
|
|
rem running some HF-based info commands
|
|
hf 14a info
|
|
hf mfu info
|
|
rem done
|
|
```
|
|
|
|
You call it with:
|
|
`$> pm3 -c myscript.cmd`
|
|
|
|
The client will execute eachone of the commands in order and then exit. There are also a possibility to remain in the client afterward with the -i parameter
|
|
`pm3 -c myscript.cmd -i`
|