Image
 
linkedin_logo.png rss_logo.jpg
twitter_logo.png youtube_logo.jpg
Latest Additions
 
EH-Net Login
Welcome Guest.






Lost Password?
No account yet? Register
Who's Online
We have 59 guests and 2 members online
EH-Net News Feeds
Latest Additions
 
Advertisement

You are here: Home arrow Forum arrow Ethical Hacking Discussions and Related Certificationsarrow Programmingarrow Reverse engineering assembly code
EH-Net
May 25, 2012, 03:46:19 PM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Advertise on EH-Net!! - Reasonable Rates, Highly Targeted Audience.
 
   Home   Help Calendar Login Register  
Poll
Question: I need to reverse engineer some assembly code
assembly code - 0 (0%)
reverse engineer - 0 (0%)
Total Voters: 0

Pages: [1]   Go Down
  Print  
Author Topic: Reverse engineering assembly code  (Read 10112 times)
0 Members and 1 Guest are viewing this topic.
coaltar
Newbie
*
Offline Offline

Posts: 3


View Profile
« on: January 15, 2010, 02:28:27 PM »

I need to write test protocols to describe what the code is doing on a temp sensor board and a timer both of which are controlled by their own micro controller. For anyone who is FDA quality systems savvy it is for a class II medical device. I am pretty new at programming so please bear with me. Ultimately I would like to see the code in human readable form. What is the quickest way (I am not adverse to hiring someone if it is very complex) to be able to write some requirements and tests for the code? I am sorry I don't have all the specifics on the controller but any help would be appreciated.
Thanks so much!
Logged
phn1x
Newbie
*
Offline Offline

Posts: 26


View Profile
« Reply #1 on: January 15, 2010, 09:48:07 PM »

This is going to be really complex, as it's not something you just jump into randomly some day with the expectation of pulling back perfectly readable code. Understanding programming concepts is really important, and understanding low level data structures is even more, but you are wanting to go pretty low level.

The basic answer is you will not get 100% correct human readable code as aspects of the code are lost during compilation. If you really need something analyzed it is best to hire someone who has done reverse engineering on embedded systems before. Windows RE Analysts may work, but only a select few as pulling apart embedded systems and microkernels is much different from pulling apart windows binaries. 
Logged
coaltar
Newbie
*
Offline Offline

Posts: 3


View Profile
« Reply #2 on: January 16, 2010, 12:06:32 AM »

Phn1x,
Thanks so much for your comments. I didn't think it would be easy (hence my cavet). I am familar with C, Java, and HTML. I might have to become the next expert Smiley Could you point me to any reources, and perhaps in chronological order if its not too much effort?
What software do you recommend I get started with?
I know that some information is lost when code is compiled but do you think that would stop me from understanding programming intent (admittedly a pretty vague question)?
Thanks again,
Coal
Logged
phn1x
Newbie
*
Offline Offline

Posts: 26


View Profile
« Reply #3 on: January 16, 2010, 10:35:26 AM »

It doesnt stop you from understanding it, but there can be tar pits in some areas.

I RE embedded systems everyday and I pretty much use a handful of things:

Primaries: IDA PRO and GDB

aside from that I use a hand few of custom tools and a lot of python.

There really isnt any book I can give you, and there really isnt an order. First I would read the book "Real time concepts for embedded systems" Then I'd read the book for the microprocessor the device runs on.

Aside from that it just takes a lot of doing and a good support team. There is not much info out there on REing embedded systems so having people to goto for questions is essential.

Keep in mind though, RE work is resource intensive. A single person with 5 years of experience, who works on a small device can take between 3-12 months to RE the device depending on the objectives.
Logged
aweSEC
Hero Member
*****
Offline Offline

Posts: 1100


View Profile
« Reply #4 on: January 21, 2010, 03:07:07 AM »

Human readable form might be not possible if you mean anything more than ASM code. Usually µCs and embedded devices are programmed in ASM anyway, so when reversing it you might get quite the same which was written by the programmers and not too much compiler-generated code.

If you haven't done anything before in this area, I would recommend hiring a person who have, as well.
Logged
Pages: [1]   Go Up
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2011, Simple Machines
Joomla Bridge by JoomlaHacks.com
Valid XHTML 1.0! Valid CSS!
Page created in 0.208 seconds with 25 queries.
 

gk_static-ad_feb2012.jpg
Global Knowledge: Build Security Skills to Protect & Defend

els_130x200fixed2.gif
eLearnSecurity Student Course Now Live!
5% Off with Code
ELS-EH-5

SANS Deals 4 EH-Netters
$150 OFF Any SANS Course in Any Format!
Coupon Code: EHN_Connect Including SANS Security West 2012 & SANSFIRE 2012
Recent Forum Topics

cbtnuggets_logo_125.jpg
Try CBT Nuggets Free!

Vote For EH-Net

Add to Technorati Favorites
technorati fave

 
         
Advertisement

© 2012 The Ethical Hacker Network
Joomla! is Free Software released under the GNU/GPL License.