Tagged: python
- This topic has 9 replies, 7 voices, and was last updated 6 years ago by
BillV.
-
AuthorPosts
-
-
January 7, 2015 at 10:38 pm #8779
SephStorm
ParticipantI’m looking at the GREM, but I will need to learn programming, from what I understand I will need to learn ASM, C, C++, Python, and Perl to be effective. What order should I learn these in, and what do you guys feel are some really good resources for going from zero to hero?
-
January 8, 2015 at 12:42 am #54078
veritas_libertas
ParticipantYowzers. That is quite a pile of languages there. I’ve been told over-and-over that C/C++ are the Latin of programming languages. I’m curious to here if others believe that is the language to start with. If it is, I’ve doing it wrong 😛 I think this is a great question when it comes to learning programming languages.
-
January 8, 2015 at 5:09 am #54079
KrisTeason
ParticipantIf you are new to programming, I would start with Python -> C -> ASM. Perl may not be necessary here. You should take a look at some of the courses Vivek has at Pentester Academy. There’s still promotional pricing available for a limited time. He has some ASM Material on there that is solid. In addition to Pentester Academy, Cybrary is a Library containing free IT Training Content. They’re going to be releasing a Malware Analysis/Reverse Engineering Course within a couple weeks – a month. This will be good preparation material for the FOR610 Class.
-
January 8, 2015 at 11:51 am #54080
SephStorm
ParticipantWow, thanks Kris, i’ll check those out. I keep forgetting that infiniteskills.com has a into to programming course that just covers the basics.
-
January 8, 2015 at 4:21 pm #54081
hayabusa
Participant@KrisTeason wrote:
If you are new to programming, I would start with Python -> C -> ASM. Perl may not be necessary here. You should take a look at some of the courses Vivek has at Pentester Academy. There’s still promotional pricing available for a limited time. He has some ASM Material on there that is solid. In addition to Pentester Academy, Cybrary is a Library containing free IT Training Content. They’re going to be releasing a Malware Analysis/Reverse Engineering Course within a couple weeks – a month. This will be good preparation material for the FOR610 Class.
^^ +1 What he said. Python will give you a good running start, and IMHO is easier to ‘begin’ with. C and ASM will require more focus and energy in study, and having some logic background, etc, prior, will likely help you a bit.
-
January 17, 2015 at 3:28 pm #54082
l0ph0nis
ParticipantI recommend starting with “Programming from the Ground up” which is an excellent read: http://savannah.nongnu.org/projects/pgubook/
-
February 10, 2015 at 12:18 pm #54083
BillV
ParticipantI can’t recall off the top of my head the order but this book has some excellent suggestions. Before you even get to Chapter 1, the author says you should have X, Y, and Z skillsets. In that introduction, he provides probably about 20 different books that you should essentially read before moving on to the first chapter lol
http://www.amazon.com/Practical-Reverse-Engineering-Reversing-Obfuscation/dp/1118787315/
…unfortunately, the introduction is not part of the preview. When I get home I can update this thread with his recommendations if you’d like. I know it starts with C and then I think moves on to the Intel x86 Assembly guide but can’t recall for sure.
-
February 10, 2015 at 12:20 pm #54084
BillV
Participant…also, I can’t find the Amazon store link for EH-Net (anyone know if it still exists?). Otherwise I’d update the link. But if you decide to purchase, try and hunt that down and purchase through that.
-
February 10, 2015 at 4:08 pm #54085
Don Donzal
KeymasterThanks for asking. The EH-Net Amazon Store is here:
http://astore.amazon.com/theethhacne0c-20
If you buy your books or any other item of any kind through our Amazon link, it definitely helps support our efforts.
Much appreciated,
Don -
February 10, 2015 at 11:03 pm #54086
BillV
ParticipantOkay, so here’s the short/summarized version:
“We suggest first learning C due to its simplicity, effectiveness, and ubiquity.” They reference the following books:
The C Programming Language (Brian Kernighan and Dennis Ritchie – Prentice Hall, 1998)
C: A Reference Manual (Samuel Harbison – Prentice Hall 2002
Expert C Programming: Deep C Secrets (Peter van der Linden – Prentice Hall 1994
Compilers: Principles, Techniques, and Tools (Alfred Aho, Ravi Sethi, and Jeffrey Ullman – Prentice Hall 1994)
Linkers and Loaders (John Levine – Morgan Kaufmann 1999)
Advanced Compiler Design and Implementation (Steven Muchnick – Morgan Kaufmann 1997)Then “once you have a good understanding of how programs are generally written, executed and debugged”:
Intel 64 and IA-32 Architectures Software Developer’s Manual Vol 1: Basic Architecture (Intel, special attn to Chapters 2-7)
Cortex-A Series Programmer’s Guide *
ARM Architecture Reference Manual ARMv7-A and ARMv7-R Edition *
* if you’re interested in ARM
Structured Computer Organization (Andrew Tanenbaum – Prentice Hall 1998)
Microsoft PE and COFF Specification“Next, you should explore the operating system”:
Modern Operating Systems (Andrew Tanenbaum – Prentice Hall 2005)
Windows NT Device Driver Development (Peter Viscarola and Anthony Mason – New Riders Press 1998)
What Makes It Page? The Windows 7 (x64) Virtual Memory Manager (Enrico Martignetti – CreateSpace 2012)
Windows System Programming (Johnson Hart – Addison-Wesley 2010)
Windows via C/C++ (Jeffrey Richter and Christophe Nasarre – Microsoft Press 2007)Inside Windows Debugging: A Practical Guide to Debugging and Tracing Strategies in Windows (Tarik Soulami – Microsoft Press 2012)
Advanced Windows Debugging (Mario Heardt and Daniel Pravat – Addison-Wesley 2007)Surreptitious Software: Obfuscation, Watermarking, and Tamperproofing for Software Protection (Christian Collberg and Jasvir Nagra – Addison-Wesley 2009)
…and that’s all in the Introduction of the book I linked to, of recommended reading prior to moving on to Chapter 1 🙂
-
-
AuthorPosts
- You must be logged in to reply to this topic.