Commit graph

150 commits

Author SHA1 Message Date
merlokk eb6e8de45d moved includes, added clear_trace flag (it was there...) and fixed multiapdu iso14443 stream 2017-11-03 13:42:38 +02:00
Oleg Moiseenko 378d3406ca
Merge branch 'master' into 14a_rework3 2017-11-02 14:14:55 +02:00
Oleg Moiseenko 83df98d691 change comment in iso14443a.c (#459) 2017-11-01 17:44:43 +01:00
merlokk 499df9088d fix behavier reading iso14443-3 and iso14443-4 cards 2017-11-01 18:34:15 +02:00
merlokk 7376da5c44 revert SAK check 2017-11-01 18:22:03 +02:00
merlokk bed3e4c20d Merge branch 'master' of github.com:merlokk/proxmark3 into 14a_rework3 2017-11-01 17:13:27 +02:00
merlokk 89ec86abd2 now SAK check is OK 2017-11-01 17:02:35 +02:00
merlokk c5e9a0212e deleted condition in iso14a select (sak & 0x20 ==0) - error. Usually SAK = 88 2017-11-01 16:55:12 +02:00
merlokk f1a983a330 fixed bug in CmdHF14ACmdRaw: if we cant select we send command anyway... 2017-10-30 17:58:43 +02:00
Oleg Moiseenko 618c220c38 small fixes in ReaderIso14443a() (#446) 2017-10-29 16:34:51 +01:00
pwpiwi bb04ef216d small fix: make iso14a_set_timeout() external 2017-10-20 20:20:07 +02:00
pwpiwi 6e49717b5e fix hf mf sim (issue #412) (#419)
* move to separate files mifaresim.[ch]
* check CRC of commands
* don't execute commands without successfull authentication
* ensure correct timing of REQA, WUPA, ANTICOL and SELECT responses
* trace reader commands immediately, only fix start time after tag response. Decreases time to be ready for next reader command.
* remove iso14443-4 remnants
* trace raw reader commands instead of decrypted ones
* some refactoring

* fix hf mf sim
* timing: decrease time to get ready for new reader commands
2017-10-20 17:55:13 +02:00
pwpiwi c04a4b60ce Don't do iso14443-4 select for mifare emulations on processor cards (IDPrime, SmartMX, ...) 2017-10-01 17:52:10 +02:00
etmatrix 4efdfbe638 Fixes 2 bugs in mifare simulate (#380)
- Check button press when there is NOFIELD, so we can exit also without FIELD
- struct nonces_t is moved to include/mifare.h so client and arm has the same definition
2017-08-17 16:59:48 +02:00
marshmellow42 3d542a3dfa coverity scan bug fixes
mfu keyNo buffer overflow
mf reader attack key count reduced to not overrun c.d.asBytes buffer.
2017-06-06 12:12:18 -04:00
pwpiwi de77d4acde add: iceman1001's idea to reuse @pwpiwi's fast select without anticollision to speedup hf mf chk
(see http://www.proxmark.org/forum/viewtopic.php?id=2920)
2017-03-27 10:29:44 +02:00
pwpiwi 1f065e1dad Refactor parity functions
- get rid of __asm function in crapto1.h, use gcc builtin function instead
- make parity functions available in common directory
2017-03-25 22:03:17 +01:00
pwpiwi 33443e7caa Code cleanup: deduplicate crapto1 library (#228)
- merge the existing 4 crapto1 sources into common/crapto1
2017-03-09 11:12:50 +01:00
Michael Farrell 5b5489baf4 hf mf sim: Multiple fixes from review of PR #209.
- Don't increment the nonce when random mode is disabled (this breaks the
  standard attack).

- Don't attempt the standard attack when random mode is enabled (there's no
  point as it won't work, per comments from @pwpiwi).

- Attempt the moebius attack if the standard attack fails.
2017-01-26 20:30:13 +11:00
Michael Farrell f9c1dcd9f6 Adds random nonce (r) option to hf mf sim.
This makes the PM3 generate pseudo-random nonces rather than sequential
nonces, to make it act a bit more like a "real" MFC card.  A reader would
otherwise be able to detect the PM3 probing based on the predictable nonces
and throw different authentication challenges (or refuse to authenticate at
all).

The code includes an implementation of a rand-like function (prand), similar
to the one from libc, which is seeded automatically based on the time it
takes between the PM3 starting up and the first call to the RNG.

This isn't cryptographically random, but should be "good enough" to be able
to evade basic detection.
2017-01-26 18:32:25 +11:00
marshmellow42 91f4d53123 couple bug fixes - clean up 2016-06-28 21:02:26 -04:00
marshmellow42 76ef5273d8 hf mf sim code cleanup - update changelog 2016-06-27 00:09:40 -04:00
marshmellow42 73ab92d14c mf 1k sim reader attack cleanup
add abort options - keyboard & button press.
2016-06-25 00:53:53 -04:00
marshmellow42 6eae192c41 fix bug in moebius nonce collection - now finishes
also cleaned up some comments
note previous update added the creation of a stats.txt file to generate
statistics of the differences between std mfkey32 and the moebius
version.
2016-06-24 16:46:11 -04:00
marshmellow42 c872d8c177 update hf mf sim x attack mode - start 10byte uid..
..support  (some from @iceman1001)
(sim reader attack currently testing std mfkey32 vs mfkey32_moebius
version...)  possibly will remove one later.
2016-06-24 01:31:27 -04:00
marshmellow42 79dcb9e090 improve hf mf sim x reader attack
can now directly extract multiple keys for multiple sectors
2016-06-22 11:03:37 -04:00
pwpiwi d9cc4e1ae2 Merge branch 'master' into topaz. Update Changelog. 2015-10-27 20:57:16 +01:00
pwpiwi 8c6b22980c hf mf mifare: (finally) fix watchdog reset
- minor changes to sync
- try alternative strategies when debugging
2015-10-10 15:04:17 +02:00
pwpiwi dfb387bf0f hf mf mifare:
- gracefully exit on unsuccessful syncs instead of hard watchdog reset
2015-09-30 20:59:50 +02:00
pwpiwi 8e21541e77 Merge branch 'master' into topaz 2015-08-25 07:53:00 +02:00
Craig Young c89274cc60 Stand Alone Mode changes for NFC (part 2) 2015-07-25 14:35:14 -04:00
pwpiwi db2b81ba11 Merge branch 'master' into topaz
Conflicts:
	client/Makefile
	client/cmdhf.c
	client/cmdhf14a.c
2015-07-01 08:17:00 +02:00
pwpiwi 09ffd16ee2 - fix: ensure that FpgaDownloadAndGo() is always called before requesting
any memory from BigBuf[]. This is required because FpgaDownloadAndGo() might
  allocate, use, and free most of BigBuf[] when decompressing FPGA configs.
- cleanup: remove rests of deprecated "end of trace markers" (0x44)
2015-06-29 09:08:52 +02:00
pwpiwi dc8ba239fb (implementing suggestion #94)
hf mf mifare: gracefully exit if tag isn't vulnerable to this attack
hf mf nested: dito
2015-06-25 08:32:29 +02:00
marshmellow42 e35031d2b7 MFU code cleanup - final ?
fixed bug in debug print in MF 1k sim.
2015-05-27 17:21:42 -04:00
marshmellow42 e9b8d0dd6e Iceman's mf sim 7bt UID fix from #97 2015-04-28 15:43:58 -04:00
pwpiwi 48ece4a750 add: Topaz mode for "hf 14a raw" (new option -T)
chg: allow tracing without parity
chg: make "hf list topaz" aware of additional commands for Dynamic Memory Model
2015-03-20 21:06:51 +01:00
pwpiwi 05ddb52c43 fix: introduced a stupid error when refactoring the start bit detector in MillerDecoding()
chg: use -O2 instead of -Os when compiling ARM sources
chg: don't clear the Miller decoders input buffer on reset
chg: be more specific for the Miller decoders start bit pattern
add: new option c in hf list: mark CRC bytes (default is off)
2015-03-18 18:32:43 +01:00
pwpiwi ef00343cb1 revert change "hf list topaz" to "hf list nfc"
refactored Startbit detection in MillerDecoding()
relaxed startbit detection in MillerDecoding()
fixed CRC checking and CRC bytes marking in hf list
fixed topaz multi frame command listing in hf list topaz
2015-03-17 07:41:08 +01:00
pwpiwi a8904ebd46 Change "hf list topaz" to "hf list nfc"
fix: reduce length of expected unmodulated signal in Miller decoder in order
to allow decoding of NFC reader communications
add: hf list nfc: aggregate reader commands into one line
add: hf list nfc: CRC check for NFC communications
2015-03-15 16:49:09 +01:00
pwpiwi ee1eadee0f add: start to support Topaz tags
- hf 14a reader now exits gracefully in case of proprietary anticollision sequence
- changed miller decoder to handle Topaz 8 data bits/no parity frames from reader
- started to implement hf list topaz
2015-03-13 18:13:18 +01:00
pwpiwi 04bc1c660b fix: hf 14a raw was broken
(see http://www.proxmark.org/forum/viewtopic.php?id=2351)
2015-03-11 20:19:30 +01:00
pwpiwi 19a700a8b5 hf 14a: if the tag supports it, set default timeout according to ATS
hf epa: remove explicit but arbitrary timeout settings
Bugfix: don't timeout when frame transmission has already started
2015-02-11 22:20:22 +01:00
Martin Holst Swende 61972abbdd Merge branch 'master' into GenericTracing
Conflicts:
	armsrc/iso14443a.c
2015-02-10 21:25:14 +01:00
pwpiwi 0c8d25ebd8 Fixed: hf mf sim failed on fast reader responses
In Miller Decoder: don't wait too long for a stable signal
In Miller Decoder: Don't accept sequences of four or more zeroes as start bit
In EmSendCmd14443aRaw: don't wait for emptying the FPGA delay queue if it isn't filled
2015-02-09 06:51:04 +01:00
Martin Holst Swende 3000dc4e7e Generic tracing; removed iso14a_XX-functions, removed traceLen as global varible 2015-02-07 20:49:40 +01:00
Martin Holst Swende 7d5ebac993 Merge branch 'master' into GenericTracing
Conflicts:
	armsrc/iso14443.c
	armsrc/iso14443a.c
	client/cmdhf.c
	client/cmdhf14b.c
2015-02-06 08:41:02 +01:00
Martin Holst Swende bb42a03ef1 Fix #1 for pm3 iclass simulation, remove erroneous extra bit after transmission 2015-02-05 19:40:47 +01:00
pwpiwi f71f4deb8f BigBuf and tracing rework: allow much longer traces in in hf commands
- provided a BigBuf_malloc() function to dynamically allocate parts of BigBuf
  e.g. for DMA-Buffers, Frame-Buffers, Emulator-Memory
- the whole rest of BigBuf is now available for traces (instead of a small fixed amount)
- send actual traceLen together with trace data
- changed client side to cope with varying traceLen
- changed small buffers to automatic variables instead of parts of BigBuf
2015-01-28 07:18:51 +01:00
pwpiwi 117d9ec25c Refactoring of BigBuf handling in order to prepare for more efficient memory allocation and longer traces. 2015-01-27 22:25:55 +01:00