Beta

Slashdot: News for Nerds

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

The IDA Pro Book

samzenpus posted more than 4 years ago | from the read-all-about-it dept.

Security 85

An anonymous reader writes "After attending DEFCON in August and seeing the overwhelming interest in this book, I was eager to dive into The IDA Pro Book by Chris Eagle. Chris Eagle's team, School of Root, won the 'Capture the Flag' event at DEFCON this year and Chris gave a presentation on CollabREate, a tool that integrates with IDA Pro to allow collaboration in reverse engineering (RE). All of that — together with the fact that the book sold out — screamed that this book should quickly make it to the top of my list." This review originally appeared on The Ethical Hacker Network.Once I had the book in-hand, the cover alone offered some insight into what was to come. The quote on the front of the book is an endorsement from the creator of IDA Pro. The image on the front is a throwback to the Operation game by Milton Bradley, which reminds me of how I felt when I got started doing reverse engineering. I am not a professional Reverse Engineer or Malware Analyst; however, my coding background and my current position as a security professional at SAS affords the opportunity to dabble. This puts me in the perfect middle ground of being able to understand the material as well as assess its ability to teach.

The IDA Pro Book is broken up into a number of different "Parts" each having several chapters and its own goal. Even if the content appears to be beyond your level of knowledge in a certain area, I highly recommend that you keep reading. It may also be handy to point out the fact that the book is 640 pages. So this lends itself to being more of a reference guide than a book read straight through from cover to cover.

I should also mention at this point that the book is about the 5.X tree of IDA Pro, and not the freeware version. There is a demo that you can download off of the IDA Pro Website if you aren't able to purchase the full version right away. In addition, there is a reference at the back discussing how the freeware version differs from the commercial version, so as long as you are ok with those restrictions while you are learning, this book still should be very handy.

One of the most important sections of Chris' book is found in "Introduction to IDA." The author discusses disassembly and the challenges that go with it, the tools involved with reverse engineering and disassembly, and a general breakdown of how these tools approach the binaries that they are analyzing. He also references other tools that are handy alongside IDA Pro, and outlines how they fit into the reverse engineering process. Finally information about IDA Pro licensing and installation is discussed, and the base information that you will need for the rest of your IDA Pro adventure is laid out.

Once the basics of RE have been covered, the author addresses the fundamentals of using IDA Pro. Unlike some other books, this book does a great job of letting you know where you should be looking when it lays out a block of assembly code. The references are well laid out as well. "Part II: Basic IDA Usage" progresses logically and eases you into the interface. It does a great job helping you figure out what all the new windows are doing, and how to get to the information that IDA Pro is providing. The content moves from basic skills such as finding the disassembly into manipulating the disassembly to be more meaningful then to optimizing the disassembly process. It shows you how to navigate the code, and how to incorporate other knowledge that you have about the binary you are disassembling, such as what headers or what libraries might have been used in order to obtain the most useful disassembly possible and facilitate the disassembly of the binary.

"Part III: Advanced IDA Usage" gets deeper into using IDA Pro, including utilizing the Fast Library Identification and Recognition Technology (FLIRT) signatures and custom files in order to suck the most information possible out of a binary before analysis. You also get a glimpse into how to modify the pieces of the application which can be modified only through config files. It concludes by explaining the patch capabilities of IDA Pro and discussing what the limitations and expectations should be. This Part provides insight into creating your own signatures for custom libraries that might not be available in IDA Pro, so, as you start working on real life applications, you can tailor IDA Pro to be able to recognize libraries that you frequently encounter.

After the basics of using the application have been covered, the author explains how to extend the capabilities of IDA Pro in Parts III and IV. He discusses in depth the scripting engine and how to build plug-ins and modules. Throughout this Part numerous examples are given of how the scripting and plug-ins fit into the application. Short detailed examples are used to illustrate how to accomplish some tasks that would be useful for a reverse engineer including listing out function information. The beginning of the chapter was great. As a beginning Reverse Engineer, I was able to clearly see how this information would apply. For the stuff that was beyond my current knowledge level, it was easy to see that as my knowledge progresses in the future, I would be back to re-visit this information.

Throughout the entire fifth Part are goodies focusing on the real-world applications of IDA Pro. It goes into the different types of binaries that you might encounter while doing reverse engineering. This chapter also goes into two large areas where IDA Pro is used such as obfuscated code analysis and vulnerability analysis. After reading this Part, you should have some handy scripts and a series of applications and plug-ins to aid in your RE adventures. The author discusses a number of those plug-ins in-depth including adding in bindings for Python and Ruby. At the end of this chapter, I hadn't learned an incredible amount more about IDA Pro; however I definitely knew more about how to approach the problems I might encounter and how to extend IDA Pro's capabilities in order to tackle real world tasks.

The final Part of the book is on the IDA Debugger. The debugging features of IDA Pro were an afterthought and aren't the primary focus of IDA Pro. Chris Eagle goes into what to expect from the debugger, how it's used, and then finally how to integrate the information obtained from the debugger into the overall RE process. He concludes with a discussion of how to automate debugging tasks with scripts and plug-ins and discusses some of the real-world problems that people might encounter, such as dealing with UPX packing that has been modified. This chapter also goes into remote debugging, where you can be running a binary on one machine and having it come back to a GUI on another. Knowing this information is especially useful if you are doing analysis across multiple platforms. The Windows GUI is the only non-console GUI in the IDA Pro supported platforms.

Chris Eagle's The IDA Pro Book provides a significantly better understanding not of just IDA Pro itself, but of the entire RE process. There are little gems littered throughout the book that bring in real-life experience and knowledge that you don't always get from other books instructing you in the use of an application. Although it is impossible to absorb everything in this book due to its size, it helped greatly in overcoming some of the initial hurdles of understanding a highly technical topic. As I continue down my reverse engineering path, I'm confident that I will use this book repeatedly as a reference.

If you are interested in getting deep into the assembly and figuring out what applications are doing when you don't have the source, then I would highly recommend this book to get you started with IDA Pro; it won't turn you into a reverse engineering expert, but it certainly will provide you with a major tool that will help you along the way.

You can purchase The IDA Pro Book from amazon.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

cancel ×

85 comments

Good book (1, Informative)

Anonymous Coward | more than 4 years ago | (#25557297)

But my binding did break after a week.

Re:Good book (5, Informative)

EasyComputer (797633) | more than 4 years ago | (#25557405)

This is not the first book about IDA Pro. However, this is the first book I recommend to anyone using IDA Pro because of the following points: * Comprehensive: it describes all major IDA features by starting at the beginning and going all the way to the end. Experienced users may be tempted to skip the first few chapters; resist this temptation and you will discover something new (I did :) * Accurate: it is very difficult to be detailed and precise when describing such a complex product. Chris does it excellently well. * Real: handles real world malware, packers, and obfuscated code * No fillers: it is direct and concise * Profound: this is not just a collection of recipes or tricks, but will give you a better understanding of the IDA architecture, thus saving you from unnecessary frustration. Knowing the limitations of your tool is just as important as knowing its capabilities. It comes tons of code snippets, scripts, and sample modules. Programming for IDA Pro is covered too: from simple plugins to processor modules. http://hexblog.com/2008/08/the_ida_pro_book_1.html [hexblog.com] ----This is not my blog.

Re:Good book (4, Funny)

gnick (1211984) | more than 4 years ago | (#25557435)

That was part of the design.

Your binding didn't break - It was disassembled.

Re:Good book (1)

Smidge207 (1278042) | more than 4 years ago | (#25557913)

Fortunately you can learn to reverse engineer the book binding and do a clean rebuild, thus restoring it to mint condition.

=Smidge=

Re:Good book (0)

Anonymous Coward | more than 4 years ago | (#25557881)

But my binding did break after a week.

That's what she said.

Re:Good book (0)

Anonymous Coward | more than 4 years ago | (#25559311)

IDA Pro is *almost* the program I had envisioned back in 1985 for a Visual Assembler. If IDA Pro allowed you to edit the code(I haven't used it recently so for all I know they've added it), it would be the perfect tool for those of us who like to delve into machine code and tweak it. Regardless, it's a top-notch piece of software if not 20 years late...:)

Re:Good book (2, Informative)

Anonymous Coward | more than 5 years ago | (#25568709)

If IDA Pro allowed you to edit the code

It does:

  1. In cfg/idagui.cfg, set DISPLAY_PATCH_SUBMENU = YES
  2. Use the newly found Edit->Patch program submenu to patch bytes or assemble new instructions. (IDC scripts can do the former as well, but not the latter, unfortunately.)
  3. Once you're happy with the result, use File->Produce File->Create EXE File to save the changed executable to disk.

How about ORE IDA pro? (1)

i_want_you_to_throw_ (559379) | more than 4 years ago | (#25557429)

I can never get Tator Tots(tm) right.

Re:How about ORE IDA pro? (0)

Anonymous Coward | more than 4 years ago | (#25557509)

Well you could start with the spelling (Tater Tots) and hyphenation (Ore-Ida).

I was always partial to crinkle cut myself.

How about IKE Pro? (-1, Troll)

Anonymous Coward | more than 4 years ago | (#25559881)

When I think of dirty old men, I think of Ike Thomas and when I think about Ike I get a hard-on that won't quit.

Sixty years ago, I worked in what was once my grandfather's greenhouses. Gramps had died a year earlier and Grandma, now in her seventies had been forced to sell to the competition. I got a job with the new owners and mostly worked the range by myself. That summer, they hired a man to help me get the benches ready for the fall planting.

Ike always looked like he was three days from a shave and his whiskers were dirty white, shaded by the brim of his battered felt fedora.

He did not chew tobacco but the corners of his mouth turned down in a way that, at any moment, I expected a trickle of thin, brown juice to creep down his chin. His bushy, brown eyebrows shaded pale, gray eyes.

The old-timer extended his hand, lifted his leg like a dog about to mark a bush and let go the loudest fart I ever heard. The old fellow then winked at me, "Ike Thomas is the name and playing pecker's my game."

I thought he said, "Checkers." I was nineteen, green as grass. I said, "I was never much good at that game."

"Now me," said Ike, "I just love jumping men ..."

"I'll bet you do."

"... and grabbing on to their peckers," said Ike.

"I thought we were talking about ..."

"You like jumping old men's peckers?"

I shook my head.

"I reckon we'll have to remedy that." Ike lifted his right leg and let go another tremendous fart. "He said, "We best be getting to work."

That summer of 1941 was a more innocent time. I learned most of the sex I knew from those little eight pager cartoon booklets of comic-page characters going at it. Young men read them in the privacy of an outside john, played with themselves, by themselves and didn't brag about it. Sometimes, we got off with a trusted friend and helped each other out.

Under the greenhouse glass, the temperature some times climbed over the hundred degree mark. I had worked stripped to the waist since April and was as brown as a berry. On only his second day on the job and in the middle of August, Ike wore old fashioned overalls. Those and socks in his high-top work shoes was every stitch he wore. When he bent forward, the bib front billowed out and I could see the white curly hairs on his chest and belly.

"Me? I just love to eat pussy!" Ike licked his lips from corner to corner then sticking his tongue out far enough that the tip could touch the end of his nose. He said, A man's not a man till he knows first hand, the flavor of a lady's pussy."

"People do that?"

He winked. "Of course the taste of a hard cock ain't to be sneezed at neither. Now you answer me, yes or no. Does a man's cock taste salty or not?"

"I never ..."

"Well, old Ike's willing to let you find out."

"No way."

"Just teasing," said Ike. "But don't give me no sass or I'll show you my ass." He winked. "Might show it to you anyway, if you was to ask."

"Why would I do that?"

"Curiosity, maybe. I'm guessing you never had a good piece of man ass."

"I'm no queer."

"Now don't be getting judgmental. Enjoying what's at hand ain't being queer. It's taking pleasure where you find it with anybody willing." Ike slipped a hand into the side slit of his overalls and I could tell he was fondling and straightening out his cock. "Now I admit I got me a hole that satisfied a few guys."

I swallowed, hard.

Ike winked. "Care to be asshole buddies?"

---

We worked steadily until noon. Ike drew a worn pocket watch from the bib pocket of his loose overalls and croaked, "Bean time. But first its time to reel out our limber hoses and make with the golden arches before lunch."

I followed Ike to the end of the greenhouse where he stopped at the outside wall of the potting shed. He opened his fly, fished inside, and finger-hooked a soft white penis with a pouting foreskin puckered half an inch past the hidden head.

"Yes sir," breathed Ike, "this old peter needs some draining." He exhaled a sigh as a strong, yellow stream splattered against the boards and ran down to soak into the earthen floor.

He caught me looking down at him. He winked. "Like what you're viewing, Boy?"

I looked away.

"You taking a serious interest in old Ike's pecker?"

I shook my head.

"Well you just haul out yourn and let old Ike return the compliment."

Feeling trapped and really having to go, I fumbled at my fly, turned away slightly, withdrew my penis and strained to start.

"Take your time boy. Let it all hang out. Old Ike's the first to admit that he likes looking at another man's pecker." He flicked away the last drop of urine and shook his limp penis vigorously.

I tried not to look interested.

"Yes sir, this old peepee feels so good out, I just might leave it out." He turned to give me a better view.

"What if somebody walks in?"

Ike shrugged. He looked at my strong yellow stream beating against the boards and moved a step closer. "You got a nice one,boy."

I glanced over at him. His cock was definitely larger and beginning to stick straight out. I nodded toward his crotch. "Don't you think you should put that away?"

"I got me strictly a parlor prick," said Ike. "Barely measures six inches." He grinned. "Of course it's big enough around to make a mouthful." He ran a thumb and forefinger along its length and drawing his foreskin back enough to expose the tip of the pink head. "Yersiree." He grinned, revealing nicotine stained teeth. "It sure feels good, letting the old boy breathe."

I knew I should button up and move away. I watched his fingers moving up and down the thickening column.

"You like checking out this old man's cock?"

I nodded. In spite of myself, my cock began to swell.

"Maybe we should have ourselves a little pecker pulling party." Ike slid his fingers back and forth on his expanding shaft and winked. "I may be old but I'm not against doing some little pud pulling with a friend."

I shook my head.

"Maybe I'll give my balls some air. Would you like a viewing of old Ike's hairy balls?"

I swallowed hard and moistened my dry lips.

He opened another button on his fly and pulled out his scrotum. "Good God, It feels good to set 'em free. Now let's see yours."

"Why?"

"Just to show you're neighborly," said Ike.

"I don't think so." I buttoned up and moved into the potting shed.

Ike followed, his cock and balls protruding from the front of his overalls. "Overlook my informality." Ike grinned. "As you can see I ain't bashful."

I nodded and took my sandwich from the brown paper bag.

"Yessir," said Ike. "I just might have to have myself an old fashioned peter pulling all by my lonesome. He unhooked a shoulder strap and let his overalls drop around his ankles.

I took a bite of my sandwich but my eyes remained on Ike.

"Yessiree," said Ike, "I got a good one if I do say so myself. Gets nearly as hard as when I was eighteen. You know why?"

I shook my head.

"Cause I keep exercising him. When I was younger I was pulling on it three time a day. Still like to do him every day I can."

"Some say you'll go blind if you do that too much."

"Bull-loney!" Don't you believe that shit. I been pulling my pud for close to fifty years and I didn't start till I was fifteen."

I laughed.

"You laughing at my little peter, boy?"

"Your hat." I pointed to the soiled, brown fedora cocked on his head. That and his overalls draped about his ankles were his only items of apparel. In between was a chest full of gray curly hair, two hairy legs. Smack between them stood an erect, pale white cock with a tip of foreskin still hiding the head.

"I am one hairy S.O.B.," said Ike.

"I laughed at you wearing nothing but a hat."

"Covers up my bald spot," said Ike. "I got more hair on my ass than I got on my head. Want to see?"

"Your head?"

"No, Boy, my hairy ass and around my tight, brown asshole." He turned, reached back with both hands and parted his ass cheeks to reveal the small, puckered opening. "There it is, Boy, the entrance lots of good feelings. Tell me, Boy, how would you like to put it up old Ike's ass?"

"I don't think so."

"That'd be the best damned piece you ever got."

"We shouldn't be talking like this."

"C'mon now, confess, don't this make your cock perk up a little bit?"

"I reckon," I confessed.

"You ever seen an old man's hard cock before," asked Ike.

"My grandpa's when I was twelve or thirteen."

"How'd that come about?"

He was out in the barn and didn't know I was around. He dropped his pants. It was real big he did things to it. He saw me and he turned around real fast but I saw it."

"What did your grandpa do?"

"He said I shouldn't be watching him doing that. He said something like grandma wouldn't give him some,' that morning and that I should get out of there and leave a poor man in peace to do what he had to do."

"Did you want to join him."

"I might have if he'd asked. He didn't."

"I like showing off my cock," said Ike. "A hard-on is something I always been proud of. A hard-on proves a man's a man. Makes me feel like a man that can do things." He looked up at me and winked. "You getting a hard-on from all this talk, son?"

I nodded and looked away.

"Then maybe you should pull it out and show old Ike what you got."

"We shouldn't."

"Hey. A man's not a man till he jacked off with a buddy."

I wanted to but I was as nervous as hell.

Ike grinned and fingered his pecker. "C'mon, Boy, between friends, a little cock showing is perfectly fine. Lets see what you got in the cock and balls department."

In spite of my reluctance, I felt the stirring in my crotch. I had curiosity that needed satisfying. It had been a long, long time since I had walked in on my grandfather.

"C'mon let's see it all."

I shook my head.

"You can join the party anytime, said Ike. "Just drop your pants and pump away."

I had the urge. There was a tingling in my crotch. My cock was definitely willing and I had a terrible need to adjust myself down there. But my timidity and the strangeness of it all held me back.

Hope you don't mind if I play out this hand." Ike grinned. "It feels like I got a winner."

I stared at his gnarled hand sliding up and down that pale, white column and I could not look away. I wet my lips and shook my head.

Old Ike's about to spout a geyser." Ike breathed harder as he winked. "Now if I just had a long finger up my ass. You interested, boy?"

I shook my head.

The first, translucent, white glob crested the top of his cock and and arced to the dirt floor. Ike held his cock at the base with thumb and forefinger and tightened noticeably with each throb of ejaculation until he was finished.

I could not believe any man could do what he had done in front of another human being.

Ike sighed with pleasure and licked his fingers. "A man ain't a man till he's tasted his own juices."

He squatted, turned on the faucet and picked up the connected hose. He directed the water between his legs and on to his still dripping prick and milked the few remaining drops of white, sticky stuff into the puddle forming at his feet. "Cool water sure feels good on a cock that just shot its wad," said Ike.

---

"Cock-tale telling time," said Old Ike. It was the next day and he rubbed the front of his dirty,worn overalls where his bulge made the fly expand as his fingers smoothed the denim around the outline of his expanding cock.

I wasn't sure what he had in mind but I knew it wasn't something my straight-laced Grandma would approve of.

"Don't you like taking your cock out and jacking it?" Ike licked his lips.

I shook my head in denial.

"Sure you do. A young man in his prime has got to be pulling his pud."

I stared at his calloused hand moving over the growing bulge at his crotch.

"Like I said," continued Ike, "I got me barely six inches when he's standing up." He winked at me. "How much you got, son?"

"Almost seven inches ..." I stuttered. "Last time I measured."

"And I'm betting it feels real good with your fist wrapped around it."

"I don't do ..."

"Everybody does it." He scratched his balls and said, "I'll show you mine if you show me yours." Then, looking me in the eye, he lifted his leg like a dog at a tree and let out a long, noisy fart.

Denying that I jacked off, I said, "I saw yours yesterday."

"A man has got to take out his pecker every once in a while." He winked and his fingers played with a button on his fly. Care to join me today?"

"I don't think so."

"What's the matter, boy? You ashamed of what's hanging 'tween your skinny legs?"

"It's not for showing off."

"That would be so with a crowd of strangers but with a friend, in a friendly showdown, where's the harm?"

"It shouldn't be shown to other people. My Grandma said that a long time ago when I went to the bathroom against a tree when I was seven."

"There's nothing like a joint pulling among friends to seal a friendship," said Ike.

I don't think so." I felt very much, ill at ease.

"Then what the fuck is it for," demanded the old man. "A good man shares his cock with his friends. How old are you boy?"

"Fifteen almost sixteen."

You ever fucked a woman?"

"No."

"Ever fucked a man?"

"Of course not."

"Son, you ain't never lived till you've fired your load up a man's tight ass."

"I didn't know men did that to each other."

"Men shove it up men's asses men all the time. They just don't talk about it like they do pussy."

"You've done that?"

"I admit this old pecker's been up a few manholes. More than a few hard cocks have shagged this old ass over the years." He shook his head, wistfully, "I still have a hankering for a hard one up the old dirt chute."

"I think that would hurt."

"First time, it usually does," agreed Ike. He took a bite from his sandwich.

I looked at my watch. Ten minutes of our lunch hour had already passed.

"We got time for a quickie," said Ike. "There's no one around to say, stop, if were enjoying ourselves."

He unhooked the slide off the button of one shoulder-strap, pushed the bib of his overalls down to let them fall to his feet.

"Showtime," said Ike. Between his legs, white and hairy, his semi-hard cock emerged from a tangled mass of brown and gray pubic hair. The foreskin, still puckered beyond the head of the cock, extended downward forty-five degrees from the horizontal but was definitely on the rise.

I could only stare at the man. Until the day before, I had never seen an older man with an erection besides my grandpa.

Ike moved his fingers along the stalk of his manhood until the head partially emerged, purplish and broad. He removed his hand for a moment and it bobbled obscenely in the subdued light of the potting shed. Ike leaned back against a bin of clay pots like a model on display. "Like I said, boy, it gets the job done."

I found it difficult not to watch. "You shouldn't ..."

"C'mon, boy. Show Ike your pecker. I'm betting it's nice and hard."

I grasped my belt and tugged on the open end. I slipped the waistband button and two more before pushing down my blue jeans and shorts down in one move. My cock bounced and slapped my belly as I straightened."

"That's a beaut." Ike stroked his pale, white cock with the purplish-pink head shining. "I'm betting it'll grow some more if you stroke it."

"We really shouldn't ..."

"Now don't tell me you never stroked your hard peter with a buddy."

"I've done that," I finally admitted,. "But he was the same age as me and it was a long time ago." I though back to the last time Chuck and me jerked each other off in the loft of our old barn. Chuck wanted more as a going away present and we had sucked each other's dicks a little bit.

"Jackin's always better when you do it with somebody," said Ike. "Then you can lend each other a helping hand."

"I don't know about that," I said.

Ike's hand continued moving on his old cock as he leaned over to inspect mine. "God Damn! Boy. That cock looks good enough to eat." Ike licked his lips. "You ever had that baby sucked?"

I shook my head as I watched the old man stroke his hard, pale cock.

"Well boy, I'd say you're packing a real mouthful for some lucky gal or guy." He grinned. "Well c'mon. Let's see you get down to some serious jacking. Old Ike's way ahead of you."

I wrapped my fist around my stiff cock and moved the foreskin up and over the head on the up stroke. On the down stroke the expanded corona of the angry, purple head stared obscenely at the naked old man.

Ike toyed with his modest six inches. "What do you think of this old man's cock?" His fist rode down to his balls and a cockhead smaller than the barrel stared back at mine.

"I guess I'm thinking this is like doing it with my grandpa."

"You ever wish you could a done this with your grandpa?"

"I thought about it a lot."

"Ever see him with a hard-on."

"I told you about that!"

"Ever think about him doing your grandma?"

"I can't imagine her ever doing anything with a man."

"Take my word for it, sonny, we know she did it or you wouldn't be here." Begrudgingly I nodded in agreement.

"Everybody fucks," said old Ike. "They fuck or they jack off."

"If you say so."

"Say sonny, your cocks getting real juicy with slickum. Want old Ike tolick some of it away?"

"You wouldn't."

Ike licked his lips as he kept his hand pistoning up and down his hard cock. "You might be surprised what old Ike might do if he was in the mood for a taste of what comes out of a hard cock."

And that is what he proceeded to do. He sucked me dry.

Then he erupted in half-a-dozen spurts shooting out and onto the dirt floor of the potting shed. He gave his cock a flip and shucked t back into his overalls. He unwrapped a sandwich from its wax paper and proceed to eat without washing his hands. He took a bite and chewed. "Nothing like it boy, a good jacking clears the cobwebs from your crotch and gives a man an appetite."

---

The following day, We skipped the preliminaries. We dropped our pants. Ike got down on his knees and sucked me until I was hard and good and wet before he stood and turned.

"C'mon boy, Shove that pretty cock up old Ike's tight, brown hole and massage old Ike's prostate.

Ike bent forward and gripped the edge of the potting bench. The lean, white cheeked buttocks parted slightly and exposed the dark brown, crinkly, puckered star of his asshole. "Now you go slow and ease it along until you've got it all the way in," he cautioned. "This old ass craves your young cock but it don't want too much too soon. You've got to let this old hole stretch to accommodate you."

"Are you sure you want to do this?"

"Easy boy, easy," he cautioned. "You feel a lot bigger than you look. Put a little more spit in your cock."

"It's awfully tight. I don't know if it's going to go or not."

"It'll go," said Ike. "There's been bigger boys than you up the old shit chute."

I slipped in the the last few inches.. "It's all in."

"I can tell," said Ike. "Your cock hairs are tickling my ass."

"Are you ready," I asked.

"How are you liking old Ike's hairy asshole so far?"

"It's real tight."

"Tighter than your fist?"

"Might be."

"Ready to throw a fuck into a man that reminds you of your grandpa."

"I reckon."

"I want you should do old Ike one more favor."

"What?"

While you're pumpin' my ass, would you reach around and play with my dick like you would your own? Would you do that for an old man?"

I reached around and took hold of his hard cock sticking out straight in front of him. I pilled the skin back and then pulled it up and over the expanded glans. I felt my own cock expand inside him as I manipulated his staff in my fingers. I imagined that my cock extended through him and I was playing with what came out the other side of him.

"C'mon, boy, ram that big cock up the old shitter and make me know it. God Damn! tickle that old prostate and make old Ike come!"

I came. And I came. Ike's tightened up on my cock and I throbbed Roman Candle bursts into that brown hole as I pressed into him. His hairy, scrawny ass flattened against my crotch and we were joined as tightly as two humans can be.

"A man's not a man till he's come in another man." said old Ike. "You made it, boy. But still, a man's not a man till he's had a hard cock poked up his ass at least once."

Every time I think of that scene, I get another hard-on. Then I remember the next day when old Ike returned the favor.

I never have managed to come that hard again. If only Ike were here.

I can m4ke w4rez n0w? (3, Funny)

kwabbles (259554) | more than 4 years ago | (#25557479)

Will this b00k teach me to cr4ck Call of Duty 4?

Re:I can m4ke w4rez n0w? (1)

morgan_greywolf (835522) | more than 4 years ago | (#25557983)

No. It will teach you how to reverse engineer stuff using the IDA Pro interactive disassembler.

Cracking DRM/copy protection/etc., is an art and a skill that may involve using reverse engineering techniques, but definitely requires a certain unique perspective.

Re:I can m4ke w4rez n0w? (0)

Anonymous Coward | more than 4 years ago | (#25558105)

Guy was clearly joking.

Re:I can m4ke w4rez n0w? (2, Informative)

morgan_greywolf (835522) | more than 4 years ago | (#25558141)

Well, that's okay, because I don't actually have a sense of humor.

Re:I can m4ke w4rez n0w? (0)

Anonymous Coward | more than 4 years ago | (#25558187)

Well, that's okay, because I don't actually have a sense of humor.

good luck with that.

Re:I can m4ke w4rez n0w? (2, Funny)

kwabbles (259554) | more than 4 years ago | (#25558607)

My wife's always telling me I need to have surgery to get my tongue out of my cheek.

IDA is a dissassembler (5, Informative)

MarkusQ (450076) | more than 4 years ago | (#25557505)

Since the review doesn't really make it clear, IDA is a dissassembler [wikipedia.org] . It allows you to take an executable for which you don't have source and construct a (generally partial) representation of what a program that would have produced that executable would look like. It can't of course give you back the actual source code (comments, variable names, etc. being lost forever) but it gives you a much, much better idea of what's going on than a hex dump would.

--MarkusQ

Re:IDA is a dissassembler (5, Informative)

whitehatnetizen (997645) | more than 4 years ago | (#25557637)

Note that there is a distinction between dissassembler and decompiler - you seem to be describing it as a decompiler, which it is not. it is similar in function to OllyDbg, although quite superior in it's analysis of the file due to its in-built libraries etc. The graphical representation of the program flow is my favorite part - it saves a huge amount of time when reversing (for me anyway).

Decompiler vs. Disassembler (3, Insightful)

MarkusQ (450076) | more than 4 years ago | (#25558057)

Note that there is a distinction between dissassembler and decompiler - you seem to be describing it as a decompiler, which it is not.

*laugh* I think what's really going on is that I bounce between levels so much that I don't really honor the distinction. Asm, HLA, LLL, HLA, scripting languages, TILs, SPILs, DSLs, it all kind of blurs together if you step away from it just a short distance. Not that I don't see such distinctions, just that I don't always see them in the traditional places. For instance, I see a much bigger divide between pairs like Haskel v. C or SQL v. prolog than I do between C and Assembly.

But yes, I see your point, for people who aren't comfortable reading Assembly and expect it to give them C++ or something the distinction would be important. Effectively, the choice of source language is one of the things that gets lost along with procedure names, module structure, and the like. You may be able to infer it but IDA isn't going to hand it to you and there is no certainty you'll be correct.

--MarkusQ

Re:IDA is a dissassembler (2, Informative)

AndrewHowe (60826) | more than 4 years ago | (#25558087)

I read and re-read MarkusQ's comment and he isn't describing IDA Pro as a decompiler at all, in fact he's explicity saying "It can't of course give you back the actual source code".
The decompiler is called Hex-Rays, it's built on top of IDA Pro and is available from the same guys at hex-rays.com. (Not advertising, just a long time happy IDA Pro customer).

Re:IDA is a dissassembler (2, Informative)

camcorder (759720) | more than 4 years ago | (#25558147)

Better note that with Hex-Ray plugin [hex-rays.com] decompiler functionality can be added to IDA Pro.

Re:IDA is a dissassembler (2, Funny)

fm6 (162816) | more than 4 years ago | (#25558541)

Since the review doesn't really make it clear...

Someday, Slashdot editors and contributors that the first thing you do when talking about something is make it clear what you're talking about. That will also be the day I go to skiing in Hell.

Re:IDA is a dissassembler (0)

Anonymous Coward | more than 4 years ago | (#25562767)

Thanks for doing the job editors are paid to do.

what the hell is IDA (2, Insightful)

cafn8ed (264155) | more than 4 years ago | (#25557519)

It sure would be nice if "IDA" were defined somewhere in the lead blurb. It would have been almost as nice if it were defined anywhere in the full review text. Wikipedia says IDA can stand for many things [wikipedia.org] . It's likely that the book is about the Interactive Disassembler [wikipedia.org] , but I may be wrong.

Re:what the hell is IDA (0)

Anonymous Coward | more than 4 years ago | (#25558275)

I feel ya on that one. I browsed the review and a few comments and I still don't know what half of it means. I mean, I'm not a code monkey, but I do dabble in a few languages and my career is IT, and I am feeling pretty noobish right now.

Re:what the hell is IDA (2)

eclectro (227083) | more than 4 years ago | (#25558935)

It sure would be nice if "IDA" were defined somewhere in the lead blurb.

And I suppose you don't have a collectiom of Star War/Trek toys either?? Or never played D&D - do you know what D&D is even?? Really, I don't know what brings you to slashdot. Please turn in your nerd card at the door as you leave. kthx.

Re:what the hell is IDA (1)

Jack9 (11421) | more than 4 years ago | (#25559309)

Never heard of IDA myself. Typing DnD, D&D, DandD, D and D...etc brings up Dungeons and Dragons. Typing IDA into Google doesn't come up with the disassembler. So we can determine that I have not been living under a rock, I've just been using Google. What a dolt?

Re:what the hell is IDA (1)

lysergic.acid (845423) | more than 4 years ago | (#25560191)

since the review is titled "The IDA Pro Book," i typed "IDA Pro" into Wikipedia, and was immediately redirected to this page [wikipedia.org] .

yes, it would have been more convenient if they'd said that IDA was a disassembler in the summary, but Wikipedia gave me a much better description of the application than the summary could have. and it isn't exactly hard to look something up on Wikipedia (if you type in the correct name).

Re:what the hell is IDA (1)

Jack9 (11421) | more than 4 years ago | (#25561879)

Perhaps the acronym should be appropriately named IDAP

Re:what the hell is IDA (0)

Anonymous Coward | more than 4 years ago | (#25561969)

IDA Pro on the other hand returns a first result.

Indeed, what a dolt.

Re:what the hell is IDA (1)

Jack9 (11421) | more than 4 years ago | (#25562411)

The comparison was IDA to D&D. Your turn.

Re:what the hell is IDA (1)

McNally (105243) | more than 4 years ago | (#25559033)

It sure would be nice if "IDA" were defined somewhere in the lead blurb.

But in a sense you must be the target market for this product. 'Cause here you are reverse-engineering the book review..

Re:what the hell is IDA (1)

pantalanaga (1061022) | more than 4 years ago | (#25559519)

if you don't know what IDA Pro is, then move along. There is nothing for you to see here.

Re:what the hell is IDA (0)

Anonymous Coward | more than 4 years ago | (#25559559)

who da pro?

Original posting (4, Informative)

whitehatnetizen (997645) | more than 4 years ago | (#25557555)

Originally posted here: http://www.ethicalhacker.net/content/view/210/2/ [ethicalhacker.net]

Re:Original posting (1)

ddonzal (943862) | more than 4 years ago | (#25558095)

Thanks for giving proper credit. w00t to Ryan!!

Re:Original posting (0)

Anonymous Coward | more than 4 years ago | (#25559121)

Bump... this was originally posted on ethicalhacker.net

Ida Red (2, Insightful)

Urger (817972) | more than 4 years ago | (#25557571)

Lights in the parlor, fires in the grate,
Clock on the mantle says it's a'gettin' late,
Curtains on the window, snowy white,
The parlor's pleasant on Sunday night.

Chorus:
Ida Red, Ida Red, I'm a plumb fool 'bout Ida Red,

Lamp on the table, picture on the wall,
There's a pretty sofa and that's not all,
If I'm not mistaken and I'm sure I'm right,
They's somebody else in the parlor tonight.

Repeat chorus:

Chicken in the bread pan peckin' out dough,
Granny will-ya dog bite, no chile no,
Hurry up boys and don't fool around,
Grab your partner and truck on down.

Repeat chorus:

My Ol' Missus swore to me,
When she died she'd set me free,
She lived so long her head got bald,
She took a notion not to die at all.

Repeat chorus:

Light's a'burnin' dim, fires a'gettin' low,
Somebody says it's time to go,
I hear the whisper, gentle and light,
Don't forget to come next Sunday night.

Repeat chorus:

Helpful Review (1)

valakas (1396435) | more than 4 years ago | (#25557663)

This is nice educated review of the book. There are a lot of guide books out there that over complicate instruction and this appears to focus on both new and experienced users.

640 pages (3, Funny)

PhrostyMcByte (589271) | more than 4 years ago | (#25557741)

should be enough for anyone.

Excellent book (4, Informative)

Peter Bortas (130) | more than 4 years ago | (#25557797)

This is the only good book on IDA there is. There are several other books on RE that bring up IDA, but never dives in to any interesting details. That includes the book "Reverse Engineering Code with IDA Pro" which does a passable job of introducing you to RE, but doesn't tell you much about IDA that you couldn't get from spending an evening with it just experimenting.

So, to anyone interested in IDA: This is the book you should buy. Now. With express delivery.

Re:Excellent book (1)

blincoln (592401) | more than 4 years ago | (#25558371)

Would you make the same recommendation to someone whose primary interest isn't x86 disassembly? IDA Pro supports disassembly of executables for a lot of other architectures.

Re:Excellent book (1)

Peter Bortas (130) | more than 4 years ago | (#25560173)

Yes, I would make this recommendation _especially_ if you are interested in other things than x86. None of the other books goes in to details on how to make processor modules.

The examples in all parts of the book where assembler examples are used are x86, but in contrast to other RE books it doesn't try to learn you to dissasemble x86. It shows how to use the tool in a general manner.

Does it show how to Ida Ida ? (2, Funny)

Anonymous Coward | more than 4 years ago | (#25558353)

Who has a crack for ida? The full version! Anyone got a pdf of the book yet? With TOC, index. All code in binary form. Come on! Chop! Chop! I'm waiting here!

Re:Does it show how to Ida Ida ? (0)

Anonymous Coward | more than 5 years ago | (#25565531)

If you are truly worthy of owning IDA you should be able to use the trial version to crack itself.

Re:Does it show how to Ida Ida ? (1)

zoward (188110) | more than 5 years ago | (#25675061)

If you are truly worthy of owning IDA you should be able to use the trial version to crack itself.

...seems kinda obvious...

If you check the website, you'll find the trial version is unable to disassemble itself.

The End Purpose? (1)

brasspen (899025) | more than 4 years ago | (#25558397)

I'm weening myself off an addiction to esoteric info in compsci to deepen a few areas. This would be great to learn how things work, but what are you going to build with it? I'm not so keen on learning for its sake these days. What is the reader going to build? I think just taking the work of others and stealing it to sell it is a bit feeble. Is there a constructive use here beyond knowledge for knowledge's sake?

Re:The End Purpose? (0)

Anonymous Coward | more than 4 years ago | (#25558781)

How about finding security flaws in closed source applications? I'll let you guess what tool is used in pretty much finding every possible security hole on Windows.

Granted RE is part of breaking copy protections, but that's only one use.

Re:The End Purpose? (0)

Anonymous Coward | more than 4 years ago | (#25561893)

Ollydbg ? not everyone can afford IDA pro
heck even objdump, gdb is enough if you are convenient in them.

Re:The End Purpose? (0)

Anonymous Coward | more than 4 years ago | (#25558809)

What makes you think that reverse engineering is all about stealing other people's work? Believe it or not, there are actually serious researchers out there that are interested in knowing the inner workings of things like say viruses and worms, which rarely get distributed with source code.

Re:The End Purpose? (0)

Anonymous Coward | more than 4 years ago | (#25558863)

Patching old no longer supported games.

And those annoying quirks shall bug us no more =)

Re:The End Purpose? (0)

Anonymous Coward | more than 4 years ago | (#25558981)

To clarify I ment patching actual bugs not removing copy protection although one could do that as well.

Another use is adding features to the game.

Re:The End Purpose? (0)

Anonymous Coward | more than 4 years ago | (#25558941)

Cynthia?

Re:The End Purpose? (0)

Anonymous Coward | more than 4 years ago | (#25560259)

The following uses do not involve stealing, or illegal actions: deciphering a full specification for an undocumented file format, determining the algorithm used by a piece of software, detecting security issues, fixing security issues, fixing other bugs, providing crucial improvements for internal use. Of course the utility of actual software changes is limited by the fact that you can't distribute them further.

Re:The End Purpose? (1)

Nazlfrag (1035012) | more than 5 years ago | (#25565605)

Start slow. Avoid reverse engineering code as your first task. Get yourself a hex editor and try to dechipher a file format, say GIF by making a series of files with slightly different properties and examining them for the differences in the hex editor. You should be able to find the header structure and width and height parameters easily, other parameters will be harder to find. When you are confident, try to make a GIF yourself from scratch in the hex editor. Congratulations, you have reverse-engineered a file format, and have stolen nothing.

To do any code disassembly you'll need to be very confident with assembler code. Id reccomend getting good at writing in pure asm before learning disassembly, it's a more generally useful skill. There are many constructive uses, but what's wrong with just obtaining knowledge if you're an esoteric compsci addict? Oh, and disassembly can be good fun and gives great satisfaction when you finally crack the code.

D'oh! (1)

LMacG (118321) | more than 4 years ago | (#25558407)

"An anonymous reader writes "

[...]

"Read below for the rest of Ryan's review. "

hohum (1)

BigBadBus (653823) | more than 4 years ago | (#25558849)

Sounds good, except that the cost of IDA Pro puts me off. I think I'll stick with OllyDbg; now what that needs is a "how to" book!

objdump (2, Interesting)

savuporo (658486) | more than 4 years ago | (#25558951)

meh, objdump -dCS, nm -C, readelf and binutils in general get the job done for me more often than not, and across various CPU architectures. fyr free.

Re:objdump (0)

Anonymous Coward | more than 5 years ago | (#25565155)

Shaddup linux fag. IDA is so superior to raw deadlisting; you obviously haven't used it once. Meh!

Re:objdump (1)

savuporo (658486) | more than 5 years ago | (#25566827)

I have, a while back. I also have used tools like Lauterbach, Realview stuff, kd and windbg and various other lowlevel debugging gizmos.
More often than not, a simple objdump does the trick.

minus 4, STroll) (-1, Flamebait)

Anonymous Coward | more than 4 years ago | (#25559169)

market1Ng surveys

IDA Pro violates GPL (2, Interesting)

CriticalHedonist (1338479) | more than 4 years ago | (#25559175)

While browsing IDA Pro product
pages at http://www.hex-rays.com/idapro/idadown.htm [hex-rays.com]
I noticed that there are downloads for two libraries that IDA seems to use:

  Linux TVision port for the IDA Interface - source code (updated 20/11/2007)

This download is password protected, but seems it is a copy of
Linux TVision - http://tvision.sourceforge.net/ [sourceforge.net] which is under GPL.

Another and more obvious their problem is:

  Wingraph v 1.03: source code the Wingraph we use and modified (GPL).
(updated 25/08/2004)

Which is available for actual downloading and is nothing more than VCG library
A Visualization Tool for compiler graphs
Copyright (C) 1993--1995 by Iris Lemke, Georg Sander, and the Compare Consortium
Which is distributed under GPL v2

The sources also contain the following text:

  * WinGraph32 - Graph Visualization Program
  * Version 1.0
  * The WIN32 interface written by Ilfak Guilfanov. (ig@datarescue.com)
  *
  * This program is under GPL (GNU General Public License)
  * It is based on the VCG tool written by Georg Sander and Iris Lemke

Seems that IDA author (Ilfak Guilfanov) does not understand GPL terms.

I notified all related parties, as well as gpl-violations.org on March 21, 2008.
But nothing happened.

The only reply I got was from Linux TVision author, where he says IDA seem to use modified GPL code.

Re:IDA Pro violates GPL (1)

marcansoft (727665) | more than 4 years ago | (#25559789)

WinGraph is used as a separate binary to view the graphs, so I don't think that's a problem. Don't know about TVision though.

Re:IDA Pro violates GPL (1, Informative)

Anonymous Coward | more than 4 years ago | (#25560329)

The version of tvision to which you point is not the version that IDA utilizes. Tvision was developed and released by Borland. It has been ported and modified by a number of different people over the years. IDA uses it as a shared library component. Hex-rays releases the tvision source code to anyone who purchases IDA, i.e. to anyone who they distribute tvision to, which is their obligation under the GPL. I believe they also distribute the source to wingraph32.

Re:IDA Pro violates GPL (1)

PingXao (153057) | more than 4 years ago | (#25561259)

Nobody cares about that stuff. Only the BusyBox project seems to take any notice when their licensing terms are violated. GPL Violations is swamped with a backlog of complaints.

Re:IDA Pro violates GPL (0)

Anonymous Coward | more than 5 years ago | (#25570123)

UMMM if they are publishing the changes they made to the source, they arenlt violating the GPL. Seems like YOU don't understand the GPL.

Too Expensive these days (4, Informative)

kmahan (80459) | more than 4 years ago | (#25559493)

I used to use IDAPro a lot -- but then they went to the new pricing model which increased the cost dramatically. So while it is a great product it really isn't affordable for people that don't have a corporate expense account.

Re:Too Expensive these days (1)

Sam Lowry (254040) | more than 4 years ago | (#25560009)

AFAIR, they still have the basic version for free.

Re:Too Expensive these days (1)

kmahan (80459) | more than 4 years ago | (#25560251)

The problem I have is that the eval version only has x86 and ARM support. I'm more interested in using it for 68k.

Re:Too Expensive these days (1)

_Shad0w_ (127912) | more than 5 years ago | (#25565769)

It lacks 64-bit support as well, iirc; I think only the Advanced version has that.

Mind you IDA Pro is cheap, compared the price of the Hex-Rays Decompiler...

Re:Too Expensive these days (2, Informative)

tlhIngan (30335) | more than 4 years ago | (#25561695)

I used to use IDAPro a lot -- but then they went to the new pricing model which increased the cost dramatically. So while it is a great product it really isn't affordable for people that don't have a corporate expense account.

That, and when I was checking it out, they only sold to established companies - you couldn't buy it even if you wanted to... which is probably why it cost so much. I'd go with the free version, but that had a number of limitations.

It appears the only way to actually get full IDA Pro is to ... torrent it.

Re:Too Expensive these days (0)

Anonymous Coward | more than 5 years ago | (#25565441)

Jeez. Over $500. Is there a competing product that's reasonably priced?

Re:Too Expensive these days (0)

Anonymous Coward | more than 5 years ago | (#25566445)

Use IDAPRo to crack itself.

Just what kind of person are you? (0)

Anonymous Coward | more than 4 years ago | (#25559661)

Seriously, for god's sake, who needs a book to use a disassembler?

just curious (1)

NovaHorizon (1300173) | more than 4 years ago | (#25560675)

Why does this have an Idaho tag?

Manswer (0)

Anonymous Coward | more than 5 years ago | (#25565429)

Young man in NYC, fresh from BYU, asks the girl on the corner if she's been to Idaho. She looks up, in a crack whore sort of way, and says, "Yeah!, I'da'ho".

Ironicly.. (1)

nawcom (941663) | more than 4 years ago | (#25562813)

This is a well-distributed application (v5.3) on bittorrent. And you wonder which disassembler they used to fix it hehe :-P I've used it myself and it's amazing how many different processors are supported and the plugins that are made for them. A few I know of are the C decompiler plugin and the BinDiff plugin (helpful if you are interested in finding the main changes between an original and cracked app.) But of course you have to have enough free cash to buy the product and plugins because no one here would ever cheat or steal, right?

Re:Ironicly.. (1)

nawcom (941663) | more than 4 years ago | (#25562839)

I've also used it to check out the code in a lot of Apple's closed source drivers - so it's extremely compatible with many different object formats.

Doesn't IDA come with a manual? (0)

Anonymous Coward | more than 4 years ago | (#25563013)

Why would you need to purchase a guide?

I bet most of the valuable info in this book could be found on the internet for free (as in beer).

Since there is obviously some collaboration between the book and software authors, maybe they should give the book away as a bonus to those who purchase the full version.

Re:Doesn't IDA come with a manual? (0)

Anonymous Coward | more than 5 years ago | (#25563417)

Why would you need to purchase a guide?

I bet most of the valuable info in this book could be found on the internet for free (as in beer).

Since there is obviously some collaboration between the book and software authors, maybe they should give the book away as a bonus to those who purchase the full version.

Obviously how? You clearly have never used IDA if you think all the info in the book is available on the internet for free, other than any torrents of pdfs of the book that may be running around out there of course ;)

Re:Doesn't IDA come with a manual? - No. (1)

nicholasharbour (648961) | more than 5 years ago | (#25563739)

It comes with a help file which describes some of its API functions for scripting and describes some of its windows. What is in this book is not just a top to bottom overview of a very complex application but extensive documentation on areas such as plugin development and internal data structures which absolutely are not documented anywhere. even on the series of tubes we call the internet. The book is also focused towards how to actually accomplish real world tasks with the program, which you would never find in a regular manual.

FWIW, I am a professional reverse engineer and have been using IDA for many years and I can easily say this book is very useful and is very well done to boot.

IDA Pro commonly used by game hackers (0)

Anonymous Coward | more than 5 years ago | (#25564765)

In fact, it is the disassembler of choice for groups like "myg0t" to crack a game client.

For example, there was a certain sports game that has client-sided speed hack detection. Within a few days it was cracked by the myg0t people, and they claim that they used IDA Pro.

Check for New Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Create a Slashdot Account

Loading...