I'm Iceman
- Proxmark3 evangelist
- RFID Hacking community
- Uses four spaces instead of
<tab>
Contributes quite a bit to open source projects
Windows based GUI for Chameleon Mini, the contactless smartcard emulator (NFC/RFID)
License: GNU General Public License v3.0
<tab>
Contributes quite a bit to open source projects
Describe the bug
GUI stops responding after mfu dump upload in any slots. Needs to force close and reopen.
To Reproduce
Steps to reproduce the behavior:
Json:
{
"Created": "proxmark3",
"FileType": "mfu",
"Card": {
"UID": "04481AD2A05E85",
"Version": "0004030101000B03",
"TBO_0": "0000",
"TBO_1": "00",
"Signature": "B44E1D9A80C825E1F7AE32506848DC6C10CE7F5DFA835158D52B1A0B7C4ED470",
"Counter0": "000000",
"Tearing0": "BD",
"Counter1": "000000",
"Tearing1": "BD",
"Counter2": "000000",
"Tearing2": "BD"
},
"blocks": {
"0": "04481ADE",
"1": "D2A05E85",
"2": "A948F203",
"3": "7FFFFFFE",
"4": "01030000",
"5": "0101012E",
"6": "76B7A400",
"7": "00AE10A8",
"8": "13015C46",
"9": "84AABA40",
"10": "00000000",
"11": "00000000",
"12": "00000000",
"13": "00000000",
"14": "00000000",
"15": "00020000",
"16": "000000FF",
"17": "00050000",
"18": "00000000",
"19": "00000000"
}
}
Is the old GUI for some doublecheck anywhere available?
Thanks
Moving this to a own function is a good idea, but current implementation is wrong:
Doing a slotindex++ in SaveActiveSlot() is only working for RevE, since _tagslotIndexOffset is 1.
For RevG the offset is 0, so there is 1 added when saving, but not substracted when restoring --> Marked slot is one index to high ....
I will fix this in my next PR
eml format upload dump directecly, is possible in future ?
see you
Describe the bug
GUI overwrite downloaded dumps if more slots share the same UID. E.g. if I upload the UID xxx to slot 1, yyy to slot 2, and xxx to slot 3 when I download all the dumps I will obtain only two files instead of three files (xxx is overwritten, even if different manipulation were done by the reader to the two slots)
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A suffix should be added to the UID. E.g. xxx_slot_n (where UID = xxx and n is the slot number)
Desktop (please complete the following information):
Color template in tab dump management, for iClass dumps would be nice
I tried MIFARE++ Ultralight but it makes dump files in .txt format and despite playing around with them it wont upload properly. I need to find a way to convert these .txt files into properly supported dump file to use with RebootedGUI.
Any Windows app or Android app that can do this?
Thanks
P.S. Sorry Iceman for using the wrong repo, I have now posted this in the correct Repo.
The MCT tool has its own format, it would be nice if the GUI could support it aswell
ikarus23/MifareClassicTool#217
@kgamecarter Maybe your magic touch?
When my device uses the detection function, I use Proxmark3 as the card reader. The ChameleonMini can't detect the password under your firmware (the calculation result is empty), but it can be used under other firmware.
When building for x64, during startup the app gets stuck due to some unhandled exceptions.
Should be remove x64 as a target, or fix the problem ?
Is "To Bin" the same with "To MFD", or is "To bin" means "to mfd binary", I didn't see the implement of "To MFD" menu item in UcExplorer.cs
var emllabel = new ToolStripMenuItem { Text = "To EML" };
var binlabel = new ToolStripMenuItem { Text = "To BIN" };
var mfdlabel = new ToolStripMenuItem { Text = "To MFD" };
switch (to)
{
case ConvertFileEnum.Eml:
{
...
}
case ConvertFileEnum.Bin:
{
...
}
}
The following language files needs to be updated:
Can you provide a compiled executable file for tests?
Thank you.
In order to keep track of how they called the mfkey code...
Please implement choice for SAK return (08) or (88).
Please implement choice for lock or unlock command for news detection by readers.
i'm sorry for new button...
Thank you very much in advance....+++
steps to recreate:
cause:
left over code from me...
will push fix soon
Color templating of card memory, in order to see what a card structure looks like.
two modes? compare and templated since the colors might mix..
should it be textfiles for easy editing?
the README says "prerequisite dot.net 4.6.1",but the DynamicExpresso.Core in packages.config uses net462 as its targetFramework,see the code below:
I've tested click-once deployment installation on Windows7,it turns out that net461 will fail the installation,net462 works fine.Is this expected?
Hi
I'm currently trying to use the GUI for my rev G, but i've encountered some problems
First of all, when I try to upload a dump to a slot, i get something like the slot 1 in the following image:
while it uploads correctly using teraterm(slot 2). If i read the tag on slot 1, i get an empty card with uid 0000000
Second problem would be while downloading a dump.
i get something like
Where the real card would start at the 48th byte
the data from the 112th bytes would be the counters(i guess)
The card data shows empty when read since it is a MIFARE ULTRALIGHT and therefore is only supposed to have 64 bytes of data
Maybe the GUI is writing/checking data at the wrong address?
I can't help but to smile when I see the audacity from this guy,
First he take this whole repo, creates his own repo over at Gitlab.
Then promptly changes text to indicate he is the one developing it.
One of the last commits, that it should go fund him for development.
https://gitlab.com/Gtpy/ChameleonMini-RevG_GUI/commit/e5823b11d492d17518c198f151c71d796adc4ecf
I tested to upload a tagdump which worked nice, then I tried to download it and compare it with my original dump file.
All well, but the dump file is 64kb large. Not at all the 1kb which I was expecting.
Something in the xmodem received function is bad
@gtpy has used and enhanced our ideas for RevG, and some of which we should adapt.
Like the idea of showing a picture of the identifyed device. That would be so easy and still so good.
Adding GUI screenshots in the Readme.md,
@bogiton do you mind adding some screenshots?
Suggestion, I saw @WolfgangMau GUI has a serial interface which is a great idea.
GUI,
The old GUI sends a keep-alive command (VERSIONMY) every 2 seconds to the device to check if it is connected or not. It also only opens the port to send a command (and receive the result) and then closes it.
In our version, once the device is connected, the port stays open as long as the program runs.
Do you think we should follow the old GUI's method of polling and opening-closing the COM port?
And here I open up for the first release of the Rebooted GUI.
It should be working with both old rebooted firmware Chameleon-new-1.0 and the updated firmware from here ChameleonMini Rebooted
We mentioned some ideas of a tab with bin-diff functionality..
Just saw this one, which have more than 2 object diffs... which would be interesting for us.
Don't ask if the licens or the rest fits.. Just saw it.
Current implementation with waiting static 100ms for a response from Chameleon is slowing down especially the startup of the tool.
Proposal:
After sending Command, wait for response until timeout occurs.
When sending download command in serial tab, the client crashes.
Since it waits for xmodem download and thats not supported yet.
Hello,
I just have a little question about GUI for Chameleon, I have one from Lab401.
It seems possible to emulate mifare classic 1k or 4k with 7bit UID in the description, but after some research, I don't found any way to emulate a mifare with 7bit UID card.
just 4bit is ok.
I read datasheet for 7bit, It seem all is in block 0, but I'm Don't Believe we can change bit of UID just with mofify data โฆ ? no ?
So is it possible to emulate a 7bit mifare classic (1k or 4k) as we can do it for 4bit ?
thanks
Regards
David
@kgamecarter
@Vrumfondel
@bogiton
I published a v1.2.0.5 for those who use the click-once deployment.
Also added a new branch in preperation for a new release.
would need some proper tests of RevG functionality. I have tested on my RevE rebooted. It works as expected.
Is there any of the issuses still there, (see issues and projects tabs) which you guys maybe wanna fix?
Great work!
@bogiton I started with a draft, feels like this current status is good enough for a new release.
Would you mind read and adapt it?
The data mapping of several toy-to-life tokens like Disney Infinity, Skylanders, Amiboo, Lego Dimension etc etc would be excellent to have color templates of.
Thats why I ask the community for help. A template file is extremly simple to do.
Color names
http://www.flounder.com/csharp_color_table.htm
4byte checkbox is checked even if different sizes files are drag & dropped
When device is reconnected, the available commands list is not reloaded.
Hi
i've allready installed the "Microsoft.NET Framework 4.5.2" (.NET Framework 4.5.2 or a later update is already installed on this computer.
) and on start of "ChameleonMiniGUI.application", he will connect anyway to the internet.
Is this the corect behavior?
BR Andreas
Hello,
I'm trying to use Chameleon Mini Rev.G with GUI, I'm not able to make it working.
I use last GUI v1.101 and Chameleon Mini is also uptodate.(same problem with previous version of GUI)
Chameleon Mini is well recognized by GUI and driver is installed (Chameleon Mini Virtual COM Port in device manager)
I'm able to send commands trough simple terminal and also via GUI
Every textbox in the GUI show (200:UNKNOWN COMMAND), as soon as I try to change parameters I get error message.
On Windows 10
How can I fix it?
Thank you
Best regards
Nicolas
if btnlong is not supported in firmware it sends a 200.. message,
this message gets added to the items in dropdown.
solution,
check for 200 message and disable dropdown if found.
will push fix soon.
as mentioned before, to the new color templates it would be nice to see a popup color legend, with the descriptions already inside the template files.
Todays function with restoring the fabric firmware is included. It is however a bit limited given we have a more updated firmware available.
I suggest we add a way to search the Rebooted-repo releases for the latest version (which is not auto created by the CI ) and give the user a easy way to select which firmware they would like to have flashed. Maybe a dropdown?
Todo
Add support for new json dump format just introduced in proxmark3 RRG repo.
Proposal for better maintainability: Don't carry the code for formatting and sending a command in two seperate functions. "SendCommandWithoutResult" can be called from "SendCommand" aswell.
The bin-diff doesn't highlight the dump-files if the filesizes isn't the same.
it should nevertheless do this.
Adding multilanguage support.
I think that textfiles with different languages will be fine.
and a dropdown to select language.
also adding saving the prefered language in the config file.
Is your feature request related to a problem? Please describe.
I want to be able to drop and drag a bin/eml/json file onto the operation tab and one slot.
Describe the solution you'd like
When I drop and drag a bin/eml/json file, and I want to see a hover effet which slot I am going to upload file to. When releasing mouse, it should upload and autodetect type/settings for the slot. Like dropping a mifare classic 1024byte file, should upload and set Mode to MF_CLASSIC_1K etc.
Additional context
I think this will give a smooth nice user experience how to operate their Chameleon mini device.
Just to start a discussion here:
At least the RevG has commands for rawWrite/Read to the NFC card. In theory that should anable to read out the content of any card (considering a known key).
Wouldn't this be a nice - and unique - feature ?
Somthing got broken in establishing the connection;
On 1st look it seems the GUI tries to connect to the first available COM-Port, no matter what this is ..
There were some talk about binary releases or distro for those who can't compile the source for the GUI.
I did a click-once deployment, where it downloads and installed it from the link below.
It also checks for updates, so yes, it calls home, read on click-once what it means, its the Microsoft built-in option. If update is found, it updates the software and restarts it.
Go ahead and test it out!
REF:
http://www.icesql.se/download/ChameleonMiniGUI/publish.htm
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.