Commit graph

139 commits

Author SHA1 Message Date
pwpiwi c656c870ae fix: AVX512 detection 2017-12-05 08:25:10 +01:00
Oleg Moiseenko 3c5fce2ba7 Add: Emv first part of commands
* hf emv search
* hf emv pse
* hf emv select
* hf emv exec command - only part of functionality
2017-11-22 06:16:33 +01:00
merlokk a2bb2735d5 TLV decoding works 2017-11-01 13:38:29 +02:00
merlokk fe346768b3 added showing apdu response codes 2017-10-31 18:14:32 +02:00
pwpiwi 3851172d81 Revert "Comms refactor (prerequisite of libproxmark work) (#371)" (#450)
This reverts commit afdcb8c159.
2017-10-27 09:56:46 +02:00
Michael Farrell afdcb8c159 Comms refactor (prerequisite of libproxmark work) (#371)
* Refactor the comms code only from PR#346, without comms_globals.h.
* OSX: Add note for example serial port
2017-10-26 21:54:27 +02:00
pwpiwi f53eb07de0 Don't ignore environment variables CFLAGS and LDFLAGS
* they are be set by some build environments to find include and lib dirs
2017-09-26 18:06:51 +02:00
pwpiwi de1e68d34b Fix detection of AVX512 support for Apple clang compiler 2017-09-12 09:09:15 +02:00
Fl0-0 a221bacd43 Fix gcc version detection (from iceman1001 fork), fix issue #386 (#388) 2017-08-27 12:08:48 +02:00
pwpiwi 930763e86d Use PolarSSL DES implementation (GPL 2 or later) for both client and firmware (#378)
to prevent licensing issues with ARM-Crypto-Lib (GPL 3 or later)
2017-08-22 10:04:47 +02:00
pwpiwi 6b758d652d Prevent using x86 SIMD compiler flags on aarch64 (ARM) architecture 2017-08-16 08:50:31 +02:00
Fl0-0 48d41dc320 Fix missing reference for PAC/Stanley 2017-07-14 17:45:09 +02:00
Michael Farrell 067bfc8b76 Refactoring uart interface (#341)
* uart: Major cleanups
- Adds documentation to the uart API.
- Fixes a buffer overflow issue in `uart_receive`, where the maximum parameter was ignored.
- Splits the maximum length and bytes recieved variables in `uart_receive`.
- Downsizes the receive buffer to the minimum required, saving 16MiB of RAM at runtime.
- Refactors the POSIX and Win32 implementations of uart into separate files.
- Removes the unused `uart_{get,set}_parity` functions, which were not implemented on Win32.
2017-07-05 20:22:02 +02:00
pwpiwi 7f9e4c257f hardnested: reduce disk space for tables (by > 700MBytes) and other minor changes
- compress tables
- minor changes to progress reporting
- free memory on aborts (@iceman1001)
2017-06-30 08:48:37 +02:00
pwpiwi ec9c71129f Fix compile errors with MacOS (#312)
* Fix compile errors with MacOS
- _POSIX_C_SOURCE must not be defined for num_CPU()

* separate util_posix.c require changes in tools directory as well

* remove unnecessary self-include
2017-06-07 22:35:20 +02:00
marshmellow42 5dd5bfb268 attempt to fix compile error gcc lt 4.9 (#306) 2017-06-07 07:36:22 +02:00
pwpiwi af7a1f7004 fix compile errors on non-Intel CPUs:
- client/Makefile: don't compile for different SIMD instruction sets if non-Intel
- hardnested cores: provide non-SIMD versions of core functions
2017-06-06 18:38:07 +02:00
marshmellow42 c2ca50419d Merge pull request #302 from pwpiwi/fix_QtThreads
fixing the crash on exit (issue #284)
2017-06-04 19:53:28 -04:00
pwpiwi 5acd195d0f fixing the crash on exit 2017-06-04 09:30:49 +02:00
pwpiwi 1985eb7cbd Fix client Makefile 2017-05-31 08:27:08 +02:00
pwpiwi c48c4d7856 New: implementing hf mf hardnested
This implements the attack described in
	Carlo Meijer, Roel Verdult, "Ciphertext-only Cryptanalysis on Hardened
	Mifare Classic Cards" in Proceedings of the 22nd ACM SIGSAC Conference on
	Computer and Communications Security, 2015
It uses precomputed tables for many bitflip properties (not only two as in the paper)
and is therefore quite efficient. To prevent failing it doesn't do
differential analysis with several nonce bytes' Sum(a8) properties (each of them
may be wrongly guessed) - instead it concentrates on one nonce byte and tries all
Sum(a8) property guesses sequentially (ordered by probability). The brute force phase
makes use of aczid's bit sliced brute forcer (https://github.com/aczid/crypto1_bs).
Includes runtime CPU-detection to leverage modern (and old) SIMD instructions
with a single executable.
2017-05-31 07:30:56 +02:00
pwpiwi f9e2c24b01 reenable build in old proxspace environment (#286)
* reenable build in old proxspace environment
(use -std=c++11 and -fPIC options for Qt5 only)

* fixing the fix...
2017-04-24 18:33:55 +02:00
marshmellow42 3fc4596f2c fix makefile to allow make of overlays.ui
to ui_overlays.h
add ui_overlays.h to .gitignore
should now compile to whatever qt version you have. (as long as it is
compatible with the overlays.ui file...)
2017-04-18 23:41:38 -04:00
marshmellow42 b760f0ffd8 cannot seem to get uic to work for ...
... different qt versions in the make file correctly...
so, make the ui_overlays.h file version generic.  maybe...
2017-04-15 13:40:49 -04:00
marshmellow42 27882d378b add uic make ui_overlays.h
to makefile
2017-04-14 10:31:00 -04:00
pwpiwi 8aee1b8418 avoid vast number of warnings with clang compiler 2017-04-11 07:05:22 +02:00
pwpiwi 3472ebe528 Compatibility fixes for Qt5 (#271)
* Compatibility fixes for Qt5
- make Qt detection in client/Makefile independent of OS
- added -std=c++11 and -fPIC as compiler options (required by some Qt versions, breaks compiling with old ProxSpace environment)
2017-04-11 06:58:20 +02:00
pwpiwi fb9acd4588 Update/cleanup Makefiles (#265)
- add new target "make mfkey" to build mfkey32 and mfkey64
- include above when "make all"
- fix Qt detection for Kali Linux
- create and use dependency files when building client
- create client/lualibs/usb_cmd.lua from include/usb_cmd.h when building client
- add Windows *.exe files with "make tarbin"
- For the time being don't include Makefile.common in Makefile and client/Makefile
- set com3 as default flashing port for Windows (including mingw)
- remove static targets snooper and cli. Remove their sources as well.
2017-03-31 16:04:04 +02:00
marshmellow42 c3caf0409c add lf securakey
still unknown - checksum and how FC relates to printed FC/Code

also removed noralsy extra ST check (i was tired...)
2017-03-29 00:37:16 -04:00
marshmellow42 a9968da347 add jablotron+noralsy lf tag definitions/cmds
Thanks to @iceman1001 for most of the code.
Jablotron is complete
noralsy is mostly known - a few bits are still unknown.
2017-03-28 18:01:45 -04:00
marshmellow42 5bce72d5e3 split lf paradox/nexwatch into own files
see changelog.md for cli changes!
2017-03-27 18:04:20 -04:00
Iceman d95878f802 Merge pull request #251 from marshmellow42/master
split fdx-b demod to its own file
2017-03-26 14:35:42 +02:00
marshmellow42 4db6f3bbb9 split fdx-b demod to its own file
added @iceman1001 s read/sim/clone commands for fdx--b
check changelog.md for cli changes!
2017-03-26 08:09:40 -04:00
Iceman 1ee7925609 Merge pull request #249 from pwpiwi/parity
Refactor parity functions
2017-03-26 08:28:43 +02:00
Iceman fecfd86d3d Merge pull request #248 from marshmellow42/master
Split data askgproxiidemod to own file
2017-03-26 08:26:30 +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
marshmellow42 946a84c35b Split data askgproxiidemod to own file
added lf gproxii read (from antenna)
fixed a few copy paste issues in the comments of some lf files
2017-03-25 15:51:31 -04:00
Iceman edf751bb62 Merge pull request #245 from marshmellow42/master
split lf indala[cmd] to lf indala [cmd]
2017-03-25 07:28:53 +01:00
marshmellow42 0fb65a262b split lf indala[cmd] to lf indala [cmd]
see changelog.md for cli changes!
2017-03-24 19:18:33 -04:00
pwpiwi 4cb4b588c2 Deduplicate mfkey32 and mfkey64
- rename client/nonce2key.[ch] to mfkey.[ch]
- leave only main() wrapper in tools/mfkey
- add mfkey32 and mfkey64 to .gitignore
2017-03-23 18:38:17 +01:00
pwpiwi 7779d73c71 Code cleanup: Refactoring nonce2key
- include nonce2key() in mifarehost.c
- remove tools/nonce2key
- simplify mifare_autopwn.lua
2017-03-20 21:16:57 +01:00
pwpiwi acf0582d53 Provide msclock() as Milliseconds timer for performance measures (#231)
- don't use clock(). It has different functionalities in Windows and Linux
- move sleep functions to util.h
2017-03-12 15:06:27 +01:00
pwpiwi 0ca9bc0e99 Upgrade crapto1 library to v3.3 (#232)
- fix standalone tools mfkey32, mfkey64 and nonce2key to use common crapto1 library
- fix compiler warnings in tools/mfkey/mfkey64.c and tools/nonce2key/nonce2key.c
- allow crapto1.c to compile on ARM hosts
- add @iceman1001's readme.txt to tools/mfkey
2017-03-12 15:05:54 +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
marshmellow42 8b6abef506 add iceman1001 s lf visa2000 commands
-reset my fork due to corruption - now add back in the lf visa
commands...
also adjusts lfdemod all detect clock functions to always return a
starting point of the clock detected ( for graphing purposes)
2017-03-07 08:48:16 -05:00
pwpiwi c44c2f04d9 Fix some #defines
- Use -D_ISOC99_SOURCE instead of -D__USE_MINGW_ANSI_STDIO=1
- WIN32 is deprecated. Use _WIN32 instead
2017-03-06 19:55:23 +01:00
pwpiwi 4197a3f6ff Make LUA scripting work even if proxmark3 is called from arbitrary working directory
- add @gpakosz whereami library (https://github.com/gpakosz/whereami) in order to ...
- determine and set absolute paths for LUA scripts and LUA libraries
2017-02-23 18:37:34 +01:00
marshmellow42 e04475c421 Add @Iceman1001 s cotag read
also needed to include some of icemans timer additions.
2017-02-03 00:14:34 -05:00
marshmellow42 103c60ec7e flag needed for some compile environments
used for 'z' and 'l' in printf commands.
2017-01-30 23:13:22 -05:00
Iceman d1057e7a21 Merge pull request #119 from marshmellow42/pm3+reveng
add reveng 1.30 source to PM3 for CRC calculations & searches
2016-10-08 19:18:14 +02:00