8 ms·
Cutter – A Qt and C++ GUI for Radare2 reverse engineering framework
- souprock 8y agoCutter is "A Qt and C++ GUI for radare2". There are more alternatives to IDA Pro. Hopper Disassembler is one. Binary Ninja (binja) is another. Here is an independent review of Binary Ninja: https://www.trailofbits.com/research-and-development/binja/ https://www.trailofbits.com/research-and-development/binja/ Here is the project itself: https://binary.ninja/ https://binary.ninja/ I happen to know most of the people involved in Binary Ninja. They do great work. They really understand security and the need to operate off-line. BTW, if disassembly is a career interest for you, see https://news.ycombinator.com/item?id=17208556 https://news.ycombinator.com/item?id=17208556 for my "Ask HN: Who is hiring? (June 2018)" comment.
- voltagex_ 8y agoReverse engineering has been a constant interest for me but I've never managed to get it to "click" for me. I don't particularly need the skill, but it's one I'd like to have (at least to the extent of being able to do simple crackmes).
- veganjay 8y agoIt's a tricky art. It's helpful to learn some of the basics such as how variables are passed to a function on the stack for x86 or as registers with x64. Beyond that it takes practice. Things that have helped me are writing c code and dissassembling it, stepping through code with GDB and working on crackmes and CTFs. For radare2 in particular, this tutorial was helpful: https://leotindall.com/tutorial/an-intro-to-x86_64-reverse-engineering/ https://leotindall.com/tutorial/an-intro-to-x86_64-reverse-e...
- crankybear1337 8y agoYeah, writing simple C programs using various constructs (switch/if/for statements, structs, different APIs, etc.) and then looking at the produced assembly is a good way to learn. Another thing I like to do is to rewrite complex parts of the disassembly in pseudo-C (though radare has an option to do this automatically), which makes the overall logic easier to see (and is, of course, the entire point of decompilers like Hex-Rays).
- souprock 8y agoThis works. Be sure to try different compilers and optimization levels. You can become a better programmer this way. You start to get a real feel for what the compiler can and can't optimize. For example, you can see how a do...while loop is usually the best kind of loop, but without seeing the assembly you might assume they are all the same.
- bitexploder 8y agoPlay the microcorruption CTF. Things should make a lot more sense when you drop away the complexity of bigger archs.
- stevekemp 8y agoMy earliest exposure to computers was the ZX Spectrum, an 8-bit home-computer from the 80s, which was insanely populare in the UK. Having few games, and little budget for more, most of the kids around would swap home-copied games. I used to have fun removing protection, or hacking the games for infinite lives. At the time I was 12-15 and it was very much a case of trial or error. Assuming a game started with 3 lives I would look for every occurance of "LD A,3", and change the 3 to 5. If that didn't work I'd eventually replace every occurance of 3 with a different number. As you can imagine this was a tedious process! If I was lucky enough to find the right "starting value" I'd then go on to look which memory-address the value was saved in. That would then let me search for that same address in the rest of the program, and hopefully spot something like: LD A,(addr) DEC A LD (addr),A At that point I was done. Removing the decrement would stop the lives-counter from being decreased - giving you as many as you wanted. Later I moved to the PC, and I found +fravia's site very educational. There are still mirrors which show how you could remove protection from commercial software - and oftentimes I'd be reminded of my previous attempts. Sometimes it is very simple, and sometimes not. Educational regardless. Random mirror here - http://acrigs.com/FRAVIA/aca400.htm http://acrigs.com/FRAVIA/aca400.htm The main reason I stopped this work? Few programs on Linux prompt you for license keys! But a good disassembler is a worthwhile thing to explore, whether for debugging your own code, or randomly exploring crackmes.
- busterarm 8y agoRandom aside: I'm constantly impressed by the output of the HCU folks and sorely wish that both the community around HCU and +Fravia were still around.
- jrumbut 8y agoMy enjoyment of fravia's philosophizing led me to try my hand at the crackmes and other stuff. I could get a few but never really got the hang of it, it was a great educational exercise. I highly recommend anyone who's interested (particularly people who don't remember a pre-Google, pre-Facebook internet) in bold (and crazy) ideas about technology reading his work. Edit: I suppose many if not most of the essays aren't strictly "pre-Google" but they are from its much earlier days when it was a very different service.
- veganjay 8y ago+1 for Hopper and BinaryNinja. Radare2 by itself has a small learning curve, but it is well worth it. It's usually the first dissassembler I turn to. Also helpful for dynamic analysis is GDB +PEDA. For some good intros for binary exploitation, see live overflows videos on YouTube.
- voltagex_ 8y agoI was given a short intro to GDB, +1 for PEDA making it a lot easier to understand (or at least, giving you enough context to know what's happening at a particular moment)
- 49bc 8y agoUgh I read your job post months ago and I’m so interested in what you’re doing. I’m not aligned in any of the skills, just really interested about the actual work. What can you share?
- rescbr 8y agoLoved the job description, but me not being an US citizen is a no-go, unfortunately.
- zerr 8y ago> Citizenship is a job requirement. Do you do disassembly for government?
- busterarm 8y ago> BTW, if disassembly is a career interest for you, see https://news.ycombinator.com/item?id=17208556 https://news.ycombinator.com/item?id=17208556 for my "Ask HN: Who is hiring? (June 2018)" comment. You're doing "God's Work". I wish I was even remotely qualified to do this sorta thing because I'm pretty interested in it, but I'm pretty far removed from it (large scale infrastructure architecture). Do you mind if I email you some questions as far as good ways to start tracking in that direction? (though you pretty much enumerated them in the transferable skills part)
- inferiorhuman 8y ago> There are more alternatives to IDA Pro. Hopper Disassembler is one. Binary Ninja (binja) is another. Sure, but radare2 is open source which cuts both ways I suppose. IDA feels significantly more polished than r2, but I've had fun implementing a not-so-common-anymore architecture as a set of r2 plugins. There's also the free version of IDA (x86 only though).
- davrosthedalek 8y agoI think the new free version of IDA also supports x86_64 now.
- heinrich5991 8y agohttps://www.hex-rays.com/products/ida/order.shtml https://www.hex-rays.com/products/ida/order.shtml >IDA Starter: supports more than 20 processor families, including the popular x86 and ARM processors. >IDA Starter does not support 64-bit files. Doesn't look like it does.
- guitmz 8y agoIDA Freeware version 7 has the following limitations: 1. Only for non-commercial use 2. Without technical support 3. Only supports x64 code It DOES support x64. I am using it. You can download it at: https://www.hex-rays.com/products/ida/support/download_freeware.shtml https://www.hex-rays.com/products/ida/support/download_freew...
- deleted 8y ago[deleted]
- aetherspawn 8y agoThis looks proper good. Interesting to see pseudo code support too.
- joshumax 8y agoI've been watching the ecosystem of radare2 GUIs for a while now. I've loved IDA for its long-standing support of numerous architectures, as well as its built-in interpreter for running Python/IDC scripts with ease, however the price is nearly inhibitive for the average student or weekend hacker. IMO, the one major reason that radare isn't as widely adopted in the RE industry is simply because of a lack of GUIs that aren't either web-based or half-baked and partially broken. In many ways, the radare2 plugin architecture is far superior to IDAs, and I hope this project can start to bridge the gap between functionality and ease-of-use. On an entirely separate note, I'd love to see a port of this for Android :)
- colechristensen 8y agoI looked into buying IDA Pro a while back and the experience was like buying enterprise software in 1997. There's not much of a reason for me to have it but it'd be a fun thing to have and toy with in spare time but I'm not really willing to pay an insane subscription price on a sketchy website.
- rocky12 8y agoSure, but it's not really the type of tool you play with during the weekends. It's high powered and the industry standard. I, and many of my colleagues, would gladly play 4 or 5 times the price for IDA and Hex Rays. Though, any decent security company will purchase a subscription for it's employees.
- colechristensen 8y ago>it's not really the type of tool you play with during the weekends I am not so sure I agree. I can take another example, CAD software. There are high powered industry standard softwares which I would love to use on weekends and maybe even use in side projects for profit, but there's no way I can pay $2k/year and justify that. A $2k permanent license? Sure, it's a stretch but I'd probably go for it. 180/month though, whatever I'm doing would have to be really serious before I could justify that. And I won't ever start at that price so the deal is dead. There's a parallel in 3d printing. Not so long ago 3d printers were insanely expensive and only accessible to professionals. Now consumer grade machines are starting to replace machines that cost 10-100x more. It's a frustrating thing about the economy where power tools that could enable a lot of people to do a lot of things are priced so that only a few people who can pay a lot can have access to them. I get that the people making them need to make a livelihood, but the frustration remains.
- JepZ 8y agoI wish there would be some App/Website similar to DragonBox [1] but to learn assembler instead of math ;-) [1]: https://dragonbox.com/products/algebra-12 https://dragonbox.com/products/algebra-12
- dpwm 8y agoTIS-100 by Zachtronics is a game based around a very small instruction set assembly language on an interesting architecture. Shenzhen I/O is also meant to be good, but I haven't played it. Neither are even close in complexity or sheer number of instructions to x86, but then I get the sense that x86 tends to put people off assembly in a way that simpler architectures don't.
- gmueckl 8y agoTIS-100 is a neat programming puzzle game. A lot of the programming challenges revolve around the limited nature of the CPU nodes in each system (two registers, no memory, very limited space for assembler source code). It's a fun game if you love to program. However, I found the later challenges somehow too frustrating and I haven't finished the game.
- sguav 8y agoI discovered Radare2 some years ago, and found that Cutter strongly lowers the learning curve of r2. On that note, I used to play (as a n00b) to some crackmes and ctf, but not having kept up to date I can't find a live replacement for crackmes.de (or .cf today...still an archive though). Any suggestions of current resources to "play" with r2 and Cutter?
- xtrapolate 8y agohttps://rada.re/r/cmp.html https://rada.re/r/cmp.html Radare, in my opinion, is mostly lacking on the user-experience sides. IDA is easier to pick-up and use. Also, I feel Radare's decompilers don't fare as-well as Hex-Rays. I equate this to Windbg - your best Windows debugger, which unfortunately is relatively tough to pick up (I'd argue, mostly due to poor UI choices). Forgoing that, Radare is absolutely packing. I've moved on to reverse most of my projects with Radare. I'm still missing a handful of small features/plugins from IDA, but it's not a big issue.
- bennofs 8y agoThe thing that r2 is lacking is a good decompiler. IDAs decompiler really helps a lot if you are reversing a big binary with many structs.
- hjek 8y agoAvast released RetDec as free software not long ago: https://news.ycombinator.com/item?id=15912595 https://news.ycombinator.com/item?id=15912595
- Vino21 8y agoHallo definitivamente você precisa google carteira R$12,00 dólar USD para encher o saldo da conta google play store para comprar a necessidade como comprar moedas de ouro diamantes em todos os jogos android no Google Play Store ou comprar aplicativos pagos Bem, eu tenho dicas para obter carteira google de freewith facilidade Veja como Download WHAFF Rewards o WHAFF Locker Na PlayStore Gravar e inserir este código, JR40691 após o login facebook JR40691 Direto Você pode primeiro bônus $ 0,300 WHAFF Recompensas é o aplicativo Money No Money Maker Provado para pagar sua missão e ganhar mais dólares e dinheiro NOTA: "Recompensas WHAFF" Requer Usuários Ativos Portanto, Nós Nos Apliquemos Para Você Continuar Usando E Executando Este "WHAFF Rewards" Para Você Receber Dólares Pagos, Mas Se Você Está Inativo Ou Removendo Este Aplicativo Você Não Receberá Pagamento Então Instale O Aplicativo orGame Neste WHAFF recompensas e jogar por 3 minutos Por favor, espalhe esta notícia para seus amigos Obrigado Saudações Sucesso .....
- Vino21 8y agoIMPORTANT AND PROFITABLE INFO !!! FOR YOUR USER ANDROID.There is a dollar-producing app that I did not run out of thought, just from an android app we can generate dollars that can be converted into several needs such as Money, Pulse, And Game Needs (DIAMONDS, CHAR, and GEMS for game CLASH OF CLANS, LET'S GET RICH, TOP ELEVEN, NINJA HEROES, HAY DAY, ETC. ALL GAMES ARE IN PLAYSTORE) This is the name of the app "WHAFF REWARDS" Whaff Rewards is a PPD based application (Pay Per Download) which means if we download the application in the menu whaff rewards then we will be paid dollars. Currently there are countless things we can do with the applications in our smart Android mobile, from a fun time with games to productivity applications.In this way of diverse is the planet of the apps of this operating system, and is that even there are applicationstoearnsomeextra money using for a few minutes a day your phone or tablet Android.Precisamente, in this article I come to tellabout one of them, it is Whaff, which according to my experience I can catalog it as a the best applications ofthis type,orperhaps the best. Whaff Rewards has many reasons to consider it the best application of this item, since the amounts of money that are earned with it are considerably higher in comparison to others, in addition there are a lot more of offers that we can complete and there are offersforwhichIwasto pay for day after day that we hold installed a certain application. In addition to that, we will also be given a certain amount to use Whaff daily in order to increase our balance.And what about the prizes, we can charge our money through PayPal or through different Giftcards or different gift cards platforms such as Google GooglePlayStore, Amazon, Steam, Play Station, Minecraft, Blizzard, among others. And something that also offers us Whaff, is that just by registering gives us a bonus of 20 cents, but if that is not enough, after registering you can enter the next code that I will leave now, which will give you 30centavos additional , soyou'll start at Whaff with 50 cents in your balance.Excellent, right ?? Welcome code for $0.30 cents (enter without quotes): "JR40691" you know that you can get the money using only Android is whaff rewards that provides an application for mobile devices called whaff rewards that can use to make money without capital.What do we need?to use the application whaff rewards, we just need: 1. Android 2 Facebook 3 internet How it works: Please note this first Invitation Code ( JR40691 ) because if you do not enter this Code ( JR40691 ) you will not have $0.30 Here's how to 1. Open Playstore 2. Search >> WHAFF Rewards Or WHAFF Locker 3. Install the Application & Open the WHAFF Application 4. Login With Your Facebook After Login Then Wait Until it says ENTER INVITATION CODE Then Enter This Code [ JR40691 ] And You Will Get $0.30 Pretty Right But If You Do not Enter Your Code Will Not Get $0.30 Your Will Get$0.00 Just paste this code [ JR40691 ] let me not forget 5. Install & Play Apps Or Games Available On Pick Premium Or play videos 6. And See Dollar $ Growing And this is as follows: how to withdraw Dollar from WHAFF to your Bank 8.Click the top left corner and the screen will display payment / payout options 9. Choose $11.5 Because $11.5 is the minimum amount that can be taken for a Paypal Account 10. If already Enter your Paypal Email And click "Request" 11. Dollar will be sent to Paypal account You For 3 Working Days NOTE: "WHAFF Rewards" Requires Active Users We Are Applying You To Keep On Using And Running This "WHAFF Rewards" For You To Get Paid Dollars But If You Are Inactive Or Removing This Application You Will Never Get Paid So Install app or game App In this WHAFFRewards And Play For 3 Minutes Please Spread This News To Your Friends Thank You Greetings Success
- zellyn 8y agoI learned to use Radare2 a bit during our company's last CTF, and while it's super awesome in terms of capabilities, the GUI story is terrible: if you start investigating, it seems there's a long debris trail of half-done GUIs where someone said, “Hey, this would be easier if there were a GUI”. Even the visual mode inside radare2 has completely different commands from the non-GUI mode, and you almost certainly need to switch back and forth. If radare2 found a couple of undergrad usability students to contribute and then focused on consistency and bug-fixing, it would be able to live up to its truly amazing potential.
- JesusTheGod 8y agoThis is great. I've tried to pickup radare2 multilple times for fun and I always struggled with the CLI. I will give it one more go with Cutter.