Commit graph

875 commits

Author SHA1 Message Date
iceman1001
dfcf20d641 FIX: Coverity Scan fixes to emvcmd.c among others.
FIX: emclearmem bug.
2017-03-05 18:43:06 +01:00
iceman1001
bdeac4021a CHG: @marshmellow42 's XL size, and em4x05 timmings. 2017-03-04 14:37:26 +01:00
iceman1001
99136c6eef CHG: finalized the merge between peter filmoores 14atagfuzz branch (emv). I seriously doubt anything works. 2017-03-01 21:51:23 +01:00
iceman1001
c24364a8a4 FIX: @marshmellow42 's ST detection fix.
FIX: lfops.c and em4x05 command timings.
2017-02-28 19:20:12 +01:00
iceman1001
f24edfec54 CHG: hf 14a read - started to add a Magic tag gen2 detection. SKipping it for now. Can't decide to put in on deviceside or in client.
FIX:  `lf read` - ophs..  it works again.
ADD: `lf em 4x05--`  - added a chipset definition
CHG: better kali fix - from @pwpivi
2017-02-28 08:16:02 +01:00
iceman1001
8db18d2f15 ADD: hf 14a read - now can detect the newer magic generation 1b. In output 1A (old version, where all hf mf c* commands works) 1B is the newer. 2017-02-27 19:18:38 +01:00
iceman1001
aa5cba4ca3 CHG: coverity scan cpmplains.. 2017-02-26 00:40:19 +01:00
iceman1001
d24026ade8 BUG: forgot to remove 2017-02-25 23:14:55 +01:00
iceman1001
d32691f1da FIX: hf mf sim - authentication works again.
CHG: `lf em`- renamed.
CHG: removed functionality in whereami.c, not needed.
2017-02-25 23:00:20 +01:00
iceman1001
17556415a9 CHG: @marshmellow42 's changes to lfops.c /lfsampling.c
CHG: updated CHANGELOG.md
2017-02-24 15:45:24 +01:00
iceman1001
5215a87442 CHG: @Marshmellow42 's fixes. ref: e88096ba25 2017-02-24 01:14:47 +01:00
iceman1001
07bc72b880 CHG: continue code cleanup.
REM: removed stdint.h ,  since we are using c99 when compiling.
2017-02-23 00:32:14 +01:00
iceman1001
9c624f67b3 chg: @piwi's code cleanup and some more.
ref: 43534cbad2
2017-02-23 00:03:10 +01:00
iceman1001
4ac9f07840 CHG: lf em - added @marshmellow42 's changes 2017-02-19 00:12:35 +01:00
iceman1001
c930078036 FIX: wrong variable name. 2017-02-15 02:46:09 +01:00
iceman1001
1bfbe92a53 FIX: coverity scan found some bugs in EMV code. These are the fixes to:
-CID 141293 - missing va_end call
  -CID 141290 - return var not always given a value
  -CID 141289 - array out of bounds write. off by one.
  -CID 141288 - dead code because of CID 141287
  -CID 141287 - wrong mask
  -CID 141286 - wrong mask value
2017-02-15 02:44:34 +01:00
iceman1001
573e8d72c7 FIX: 'EMV compiling' - Makefiles are very picky about how things are done. its parser is a bit paranoid. So, to make things easier and more correct.
- armsrc/Makefile          when commenting out functionality,  move it below the comment otherwise APPS_CFLAG breaks to early.  See WITH_LCD
  - common/Makefile.common   enable / disable EMV,  uncomment two lines.  then make clean && make all.  flash,   MIGHT NOT work on 256kb devices

FIX: missing break in appmain.c made it go to iclass function..
2017-02-13 15:32:48 +01:00
iceman1001
4c8fe2e976 CHG: some minor adjustments. 2017-02-13 11:06:30 +01:00
iceman1001
ff9c043da2 FIX: T5555/Q5 datarate when used in "Q" parameter, consequential fix in lf commands. (RF-2/2) ie: ((64-2)>>1)
ADD: Marshmellow42 's timing fixes for em4305.
2017-02-13 10:58:28 +01:00
iceman1001
cb1ba30a5e FIX: first attempt to clean up EM4x50 commands.
- `lf em4x readwordPWD` merged into `lf em4x readword` See help text
 - `lf em4x writewordPWD` merged into `lf em4x writeword` See help text

 - `lf em4x readword` now download the collected signal data after command.

On device side the lfops.c has gotten some love. Code cleaner,  increased EM_START_GAP from 55 FC to 56 FC, because of how our microsecond(us) clock works with 21.3us increments.

TODO: `lf em4x em4x50read` needs to be factored to use @marshmellow42 's  ASKdemod instead of trying to do itself.
2017-02-07 22:26:06 +01:00
iceman1001
5ed5e418c9 CHG: testing to set 460800 baudrate as default, if it fails, go to 115200 baudrate. For Linux/Win. Works great in my environments. 2017-02-06 02:33:08 +01:00
iceman1001
1903696e2a chg: uncomment -DWITH EMV to compile for EMV. 2017-02-06 00:57:31 +01:00
iceman1001
60ca588725 syntax sugar 2017-02-06 00:51:06 +01:00
iceman1001
d627a2fd8c FIX: commented code screws up notepad++ groupings. 2017-02-06 00:50:37 +01:00
iceman1001
a32e8034e0 FIX: get rid of de-referecing pointer warnings. 2017-02-06 00:49:32 +01:00
iceman1001
6a1687cc3e ADD: 'hf emv' - forgot to add some file 2017-02-05 22:16:50 +01:00
iceman1001
3e83ff2159 CHG: '-DWITH_EMV' - fixing some compilation errors when compiling with peter fillmore's emv code. Warning a 256kb Proxmark3 device will only have 7% memory left if you enable this 2017-02-05 21:09:36 +01:00
iceman1001
a330987de1 CHG: 'lf cotag demod' - now finds FC/CN Thanks to @marshmellow42
CHG:  'lf search' - now detects COTAG
2017-02-02 19:15:36 +01:00
iceman1001
5f5b83b743 ADD: 'lf cotag read' - COTAG can be read now. 2017-02-02 15:32:21 +01:00
iceman1001
4401050bcc ADD: 'hf standalone 14a mode", added "mifare 4k" detection.
ADD: 'hf 14a sim' - added mifare 4k simulation.
2017-02-01 14:41:06 +01:00
iceman1001
507afbf3e6 CHG: 'lf cotag read' - it now follows "lf config" settings when collecting signaldata. 2017-02-01 14:11:11 +01:00
iceman1001
d760c7b3d9 FIX: 'standalone_14a mode' - cleaned up the standalone14a mode code. It now detects and simulates 4,7byte uids, like it should. code refactored to be easier to understand. 2017-02-01 14:09:26 +01:00
iceman1001
16cfceb689 CHG: rename a local scope variable "data"->"cmd"
CHG: call params to selectcard too few
CHG: 'standalone HF mode' - when copying second UID onto data array,  it should append after first one, not over the first one.
ref: https://github.com/iceman1001/proxmark3/issues/77    Lets see if this fixes the HF part of this issue
2017-02-01 12:50:54 +01:00
iceman1001
b828a4e168 CHG: 'lf snoop' - now automatically downloads samples after finished. (annoying step to do over and over)
FIX: 'lf snoop'      - now turns of LF antenna after snoop.
FIX: 'lf cotag read' - now waits until the ACK cmd arrives before downloading samples.
2017-01-31 16:11:57 +01:00
iceman1001
84bdbc1917 FIX: 'hf 14a sim x' - adjusted and shows messages when verbose.
FIX: 'hf mf sim x i' - same as above.

In general we only use Moebius attack for "sim x",  that means a clean up on device side code. simpler to understand. It still tries to gather 8 different collections of nonces combo. When one is complete, it get sent to client which runs moebius direct.
2017-01-29 23:09:23 +01:00
iceman1001
7e735c1398 FIX: 'hf 14a sim x' - this fixes the error with using moebius attack and sim. Updating the nonce variable doesn't change the premodulated response. And it should update everytime it gets a command. One concering issue is that this takes time. Successfully works with two PM3. One acting reader, another sim. 2017-01-29 11:29:15 +01:00
iceman1001
e99acd00cc CHG: the mifare Auth command can make use of a random nonce aswell.
CHG: since sim commands are timing critical, I'm testing a smaller prand prng function from Intel
2017-01-29 10:41:48 +01:00
iceman1001
4653da4331 ADD: lf cotag - added first try at basic functionality to read samples from Cotag. In lfops.c is the startup sequence that needs to be tested out. 2017-01-27 10:49:34 +01:00
iceman1001
74dde713b1 CHG: should remove the OSX linker warning: ld: warning: directory not found for option '-L/opt/local/lib' 2017-01-26 21:13:17 +01:00
iceman1001
2d3f8e5fa7 ADD: some defines to make headerfiles behave better.
CHG: syntax sugar
2017-01-26 14:23:05 +01:00
iceman1001
bf5d7992ce ADD: @micolous random nonce, adjusted to fit in. Icemanfork only uses Moebius attack, so no need for an extra parameter in client.
ref: https://github.com/Proxmark/proxmark3/pull/209
2017-01-26 14:21:51 +01:00
iceman1001
de39bf505a CHG: moved some from THUMB to ARM.. Looks like usb communication became bad. 2017-01-25 13:00:49 +01:00
iceman1001
0ccf8adac4 CHG: moved to header file 2017-01-25 00:34:00 +01:00
iceman1001
53d5dc643f CHG: fiddled with the headerfiles... and makefile... Tried to make them behave nice. So it isnt a hell to add new functions from third-party (like des, aes etc)
Added a lot of #ifndef ,   extern C,
Move inside from ARMSRC -> THUMBS,  which made the compiled image smaller.. I don't know if it broke anything.
Moved MF_DBGLEVEL definitions into common.h
Moved print_result from util.c into appmain.c
Also split up some struct typedef  into header files so they could be reused in other code places.

''' danger '''  this might have broken stuff...
2017-01-25 00:33:03 +01:00
iceman1001
0de81725ed syntax sugar 2017-01-21 11:34:33 +01:00
iceman1001
0f7279b22d syntax sugar 2017-01-21 11:33:14 +01:00
iceman1001
7dcd37fc2e chg: moved to header file 2017-01-21 11:29:16 +01:00
iceman1001
0062cc1ca1 removed unneeded include 2017-01-21 11:21:05 +01:00
iceman1001
5b749dcb0e CHG: moved to header file 2017-01-21 11:20:26 +01:00
iceman1001
8be98f12e9 syntax sugar 2017-01-21 11:07:44 +01:00