diff --git a/Images/5355keypad-bin2pin.jpg b/Images/5355keypad-bin2pin.jpg new file mode 100644 index 0000000..7a3169b Binary files /dev/null and b/Images/5355keypad-bin2pin.jpg differ diff --git a/Keypad/README.md b/Keypad/README.md new file mode 100644 index 0000000..d3569fd --- /dev/null +++ b/Keypad/README.md @@ -0,0 +1 @@ +![HID-5355-Bin2Pin-Reference](../Images/5355keypad-bin2pin.jpg?raw=true) \ No newline at end of file diff --git a/Magstripe/README.md b/Magstripe/README.md new file mode 100644 index 0000000..ec6a918 --- /dev/null +++ b/Magstripe/README.md @@ -0,0 +1,49 @@ +Magstripe Reader Tested: HID 3110-6445 Magstripe Pass-Through Reader + * set to rotary position B (Raw Data - All Bits Wiegand) + +RFID-Tool Specific Settings + * set buffer size to 256 bits or greater + +See [aba-decode.php](aba-decode.php) script for converting binary card data to ascii (Script by: AndrewMohawk) + * Command Line: /usr/bin/php aba-decode.php 1101000001100000100011001001001010101101111000001010011101101111100010 + * Web: https://www.LegacySecurityGroup.com/aba-decode.php?binary=1101000001100000100011001001001010101101111000001010011101101111100010 + +Binary: +5 bits +Little Endian Format + +LRC(Longitudinal Redundancy Check): +Count # of set bits(1's) in column +EVEN = 0 +ODD = 1 + +Track 2 Debit/Credit Card Format(for example): +;1234567890123456=YYMMSSSDDDDDDDDDDDDDD?* +; = Start Sentinel +1234567890123456 = 16 Digit Card # += = End Card # +YY = Expiration Year +MM = Expiration Month +SSS = Service Code (As Understood From Wikipedia: "201" means chip required, "101" means no chip, be sure to recalculate the LRC if changing, it is not advised to experimental here without knowing the laws involved) +DDDDDDDDDDDDDD = Discretionary Data +? = End Sentinel +*=LRC + +Binary Reference: +11010 ; - Start Sentinel +00001 0 +10000 1 +01000 2 +11001 3 +00100 4 +10101 5 +01101 6 +11100 7 +00010 8 +10011 9 +00111 < +01110 > +01011 : +10110 = - End Card Number +11111 ? - End Sentinel +00010 LRC \ No newline at end of file diff --git a/Magstripe/aba-decode.php b/Magstripe/aba-decode.php new file mode 100644 index 0000000..277cd94 --- /dev/null +++ b/Magstripe/aba-decode.php @@ -0,0 +1,121 @@ + strlen($haystack)) + trigger_error(sprintf("%s: length of argument 2 must be <= argument 1", __FUNCTION__), E_USER_WARNING); + + $seeks = array(); + while($seek = strrpos($haystack, $needle)) + { + array_push($seeks, $seek); + $haystack = substr($haystack, 0, $seek); + } + return $seeks; +} + +function processBinary($binary) +{ + $AsciiOutput = ""; + + //find start sentinel + $start_sentinel = strpos($binary,"11010"); + if($start_sentinel === false) + { + echo "Could not find start sentinel\n"; + return false; + } + + //find end sentinel + $end_sentinel = false; + $end_sentinel = strrpos($binary,"11111"); + if(count($end_sentinel) == 0) + { + echo "Could not find end sentinel\n"; + return false; + } + + //Lets decode the data: + $bit_length = 5; // 4 bits for data, 1 bit for odd-parity or LRC checking + + + $data = substr($binary,$start_sentinel,($end_sentinel-$start_sentinel+5)); + + $currentBits = ""; + $currentNum = 0; + $finalString = ""; + + for($i=0;$iESP-RFID-Tool v")+version+F("

by Corey Harding
www.LegacySecurityGroup.com / www.Exploit.Agency

-----
File System Info Calculated in Bytes
Total: ")+total+" Free: "+freespace+" "+" Used: "+used+F("
-----
List Exfiltrated Data
-
Experimental TX Mode
-
Configure Settings
-
Format File System
-
Upgrade Firmware
-
Help")); + server.send(200, "text/html", String()+F("ESP-RFID-Tool v")+version+F("

by Corey Harding
www.RFID-Tool.com
www.LegacySecurityGroup.com / www.Exploit.Agency

-----
File System Info Calculated in Bytes
Total: ")+total+" Free: "+freespace+" "+" Used: "+used+F("
-----
List Exfiltrated Data
-
Experimental TX Mode
-
Configure Settings
-
Format File System
-
Upgrade Firmware
-
Help")); }); server.onNotFound([]() { diff --git a/Source Code/esprfidtool/version.h b/Source Code/esprfidtool/version.h index 5c05291..38cec34 100644 --- a/Source Code/esprfidtool/version.h +++ b/Source Code/esprfidtool/version.h @@ -1 +1 @@ -String version = "1.0.4"; +String version = "1.0.4a";