Slashdot Mirror


Can Reverse Engineering Help In Stopping Worms?

krozinov writes "The goal of this paper is to try to answer the following three questions: How do you reverse engineer a virus? Can reverse engineering a virus lead to better ways of detecting, preventing, and recovering from a virus and its future variants? Can reverse engineering be done more efficiently? The paper is organized into five sections and two appendixes. Section 1 is the introduction. Section 2 reviews basic x86 concepts, including registers, assembly, runtime data structures, and the stack. Section 3 gives a brief introduction to viruses, their history, and their types. Section 4 delves into the Beagle virus disassembly, including describing the techniques and resources used in this process as well as presenting a high level functional flow of the virus. Section 5 presents the conclusions of this research. Appendix A provides a detailed disassembly of the Beagle worm, while Appendix B presents the derived source code of the Beagle virus, as a result of this research."

187 comments

  1. Well by omghi2u · · Score: 1, Funny

    Why didn't I think of that:? :P

    1. Re:Well by narf · · Score: 0, Offtopic

      Because of susie.

    2. Re:Well by omghi2u · · Score: 1

      This is hardly the time to bring up susie, although she is prone to viruses. Perhaps we can "toughen susie up" with the help of these papers!

    3. Re:Well by igny · · Score: 3, Funny
      Why didn't I think of that:? :P

      Because you didn't have time trying to post the first post?

      --
      In theory there is no difference between theory and practice. In practice there is. - Yogi Berra
    4. Re:Well by omghi2u · · Score: 1

      I think this may have something to do with susie! Do you or do you not agree susie has / gets tons of viruses? Seriously, not joking here! Thx.

    5. Re:Well by blake8087 · · Score: 0

      zing!

      --

      --Slashdot readers delight in generalizing the behavior of other Slashdot readers.
    6. Re:Well by jsitke · · Score: 2, Interesting

      I was always under the impression that viruses are commonly reverse engineered. Doesn't sound like news to me.

    7. Re:Well by Listerine · · Score: 1

      What the hell, you're posting shit like this in places where I won't even notice it?

  2. Waste of time by zerguy · · Score: 3, Insightful

    If I understood the article, they are trying to reverse-engineer worms to find out how they work. Why not just ask the numerous people who were black hats but now work for security firms?

    --
    **This begins my ever-changing sig
    We need a -1 RTFA moderation option!
    **This concludes my ever-changing sig
    1. Re:Waste of time by stecoop · · Score: 1

      Yeah your completely correct as we all now that anyone that writes any good viruses has a good EULA protecting it from reverse engineering. Social engineering usually doesn't encompass the EULA.

    2. Re:Waste of time by mytec · · Score: 5, Insightful

      The virus, worm, trojan field advances, sometimes rapidly. If a new worm arrives that hasn't been seen before how much help can someone be that hasn't written or played the game in a year or longer? I think your question, and I'm not attacking you, is much like asking if forensic science is needed, just ask the murders....

      I think the third question, can reverse-engineering be done more efficiently, is the important one because it will help question #2 significantly.

    3. Re:Waste of time by ajs · · Score: 5, Interesting

      No. Reverse engineering is key in understanding what virus writers are doing TODAY, and how the state of the art is progressing. It is hoped that you will conclude, "these are just a bunch of script kiddies who don't write unique and interesting code," but in reality dissassembling this stuff reveals that the Virus/Worm writing market is getting quite sophisticated. Tracking the advances and giving that information to the white-hats is key.

    4. Re:Waste of time by Anonymous Coward · · Score: 1, Funny

      Speaking for the murders... no forensic science is not needed.

    5. Re:Waste of time by Mikail · · Score: 1

      Silence of the Lambs, anyone?

      --
      If life is a waste of time and time is a waste of life, let's all get wasted and have the time of our lives.
    6. Re:Waste of time by superpulpsicle · · Score: 1

      You can never reverse engineer a worm faster than some 17 year old pump out a new worm.

      Give it up, if you have something mission critical. Don't use windows or internet explorer. Use linux and firefox.

    7. Re:Waste of time by Anonymous Coward · · Score: 0

      As if there is something inherent about linux and firefox (other than lack of popularity) that prevents them from being worm food?

      Try this new flash game... It's a strange blend of Dungeon Dice and Pacman.
      Chomp Dice

    8. Re:Waste of time by Anonymous Coward · · Score: 0

      Mod parent down as troll. That flash game is actually a trojan that infects Internet Explorer unless patched.

    9. Re:Waste of time by mugnyte · · Score: 1


      Actually, I took the article as a huge set of techniques to isolate and figure out a discovered threat. If there was a virus on their machine that hadn't been caught by current AVS, with a different set of initial steps, one could do this same thing and built a bit signature.

      I look forward to when the authors examine encrypted and polymorphic malware.

    10. Re:Waste of time by bdash · · Score: 2, Interesting

      Give it up, if you have something mission critical. Don't use windows or internet explorer. Use linux and firefox.

      If it's mission critical why the hell are you running a web browser on it anyway?

  3. Reverse Reverse by teiresias · · Score: 4, Interesting

    what happens when they reverse engineer the reverse engineering you did on the virus they originally wrote? if we look into the biological field, fighting viruses only makes them stronger. Not that we shouldn't but the better the anti virus writer becomes, the better the virus writer already is.

    --
    -Teiresias
    1. Re:Reverse Reverse by towaz · · Score: 1

      Well this has happened a few times with reverse engineering.. a new worm or virus in this case comes out... everyone takes it apart and comment on certain bits of the code.

      the creater reads it and releases his now corrected version a few hours later.. or copycats i guess :)

      Through they is a real buzz when a new worm comes out and you can take it apart.. I will never be as fast as any anti-virus venders but still entertaining none the less.

      --

      --
      "I disapprove of what you say, but I will defend to the death your right to say it." - Voltaire
    2. Re:Reverse Reverse by zerguy · · Score: 0, Offtopic

      I love your sig!

      --
      **This begins my ever-changing sig
      We need a -1 RTFA moderation option!
      **This concludes my ever-changing sig
    3. Re:Reverse Reverse by Thimble · · Score: 1

      by this theory, since viruses are a product of reverse engineering themselves, it'll make security tighter as well...

      so, in effect, the last reverse engineerer will be winning the reverse engineering war... an endless battle of one-upmanship until it all ends in a cosmic apocalypse...

    4. Re:Reverse Reverse by Anonymous Coward · · Score: 0

      source code for these viruses are available most of the time (underground)

  4. better solution? by Jrod5000+at+RPI · · Score: 4, Insightful

    perhaps it would be more insightful to study WHY individuals expend so much time and energy writing viruses, worms, etc. in the first place.
    in the future, i suspect this sort of malware will only get worse in terms of technical complexity, but the reason for their creation will probably be roughly the same.

    my $0.02

    1. Re:better solution? by Anonymous Coward · · Score: 0

      viruses are funny i hope they take over the internet

    2. Re:better solution? by zerguy · · Score: 5, Insightful

      That's a good idea, but the problem is that there is no way to prevent people from writing malware. The general reasons people create malware are:
      1. For fame
      2. For fun
      3. For profit
      4. They have some sort of grudge
      5. To show off

      These are all basic human instincts, manifested in a bad way. There is really no way to prevent anyone from having any of these desires.

      --
      **This begins my ever-changing sig
      We need a -1 RTFA moderation option!
      **This concludes my ever-changing sig
    3. Re:better solution? by Ignignot · · Score: 1

      To quote the famous computer scientist Meat Loaf - "I ain't in it for the power, I ain't in it for my health, I ain't in it for the glory of anything it all, and I sure ain't in it for the wealth."

      --
      I submitted this story last night, and it didn't get posted.
    4. Re:better solution? by Ingolfke · · Score: 1

      Yes yes... and why do people troll? If we could only figure out why they do it, we could prevent it, and if we can prevent it, isn't it our own responsibility to do so, so by not doing so we have enabled others to troll... so next time you read a troll, remember you made them do it you lazy society killing miscreant. Insensitive clod is too good of an insult for you.

    5. Re:better solution? by zx75 · · Score: 3, Insightful

      Some common answers:
      a. Because they can.
      b. To see if they can get away with it.
      c. They believe they can't be caught.
      d. To get attention/gain 'respect'.

      These tend to be recurrent reasons given for a lot of crimes that do not seemingly provide any benefit to the criminal. Grafitti is another, as is petty theft when the person in question is not thieving because of any real desire to have the stolen item or profit from it.

      --
      This is not a sig.
    6. Re:better solution? by Ingolfke · · Score: 2, Funny

      On second thought you really could be on to something here. The reason people expend so much time and energy writing viruses is because they have time and energy to expend. So if we forced everyone to work in the mines for 15 hours a day, they would have no energy, and no time. Problem solved.

      On a side note, I doubt anyone from EA writes viruses.

    7. Re:better solution? by FuzzzyLogik · · Score: 1

      i always thought this one was an easy one. it provides a challenge. it's not quite like a game but it is. i mean if i were to write one, i'd try to pick something kinda hard and obscure and make it as streamlined and unique as i could. i think most worm/virus writers are in it to be seen now. "my worm just got mentioned on the world news!" it's almost like a contest but ... the prize is seeing your virus/worm/etc as a neon sign on the news and virus information webpages

    8. Re:better solution? by micromoog · · Score: 2, Insightful

      There's no surer sign of someone being "in it for the wealth" than saying "I'm not in it for the wealth".

    9. Re:better solution? by Anonymous Coward · · Score: 0

      "Grafitti is another, as is petty theft when the person in question is not thieving because of any real desire to have the stolen item or profit from it."

      While this may be true for petty grafitti, such as a name, or just chicken scratch. But Gang members feel they are "gaining" that territory when they place their mark.

      On the flip side of this we find the artictic grafitti, some of which is done for the purpose of being seen, I for one don't complain about seeing it if it's well done. I have even contracted a few pieces to be done in my buisness (graphic design).

    10. Re:better solution? by irc.goatse.cx+troll · · Score: 1

      "but the problem is that there is no way to prevent people from writing malware."

      Sign all executables. Refuse to run unsigned executables. Dont sign malware.

      --
      Pain lasts, kid. Its how you know you're alive. Sometimes I think this growing up thing is just pain management-TheMaxx
    11. Re:better solution? by zerguy · · Score: 1

      Who would be responsible for signing them?
      Undoubtedly Microsoft's dog Intel, or some consortium puppeteered by Microsoft.

      Say buh-bye to Linux. Even if it weren't controlled by MS, there are so many versions of Linux that it would be impossible to certify them all.

      Furthermore, if I am an amateur programmer, how can I write programs if the processor refuses to run them. I shouldn't have to go through some giant process just to get my 20-line perl script to run.

      --
      **This begins my ever-changing sig
      We need a -1 RTFA moderation option!
      **This concludes my ever-changing sig
    12. Re:better solution? by BeerCat · · Score: 1

      Using the biological analogy from a few posts up, that is akin to:

      Buy only branded drugs. Refuse to buy generic drugs. Don't buy brands from other countries.

      --
      "She's furniture with a pulse"
    13. Re:better solution? by Anonymous Coward · · Score: 0

      There's no question 'why' any more.
      Money.

      Now writing worms is a business, the zombie networks
      can be traded with spammers for real MO$$$$$NEY,
      so writing a good worm can easily make you a $20000
      or $50000. As well as destructive viruses does,
      for somebody's purpose

      They can study Mitnik and others and script-kidiz
      generation of 90x, or even nowadays skrptkidiz,
      but now the game is managed by real professionals,
      so there's no more psychological or moral questions
      here. Thast's it.

  5. Reverse Engineering a virus... by jmcmunn · · Score: 5, Insightful


    It only helps if the people who write future variants are lazy...so I guess yes, it will help with there not being versions A-ZZZ of the bagle virus, but the serious ones are still going to be out there.

    It already takes very little time for them to catch most variants these days. My software (AVG) is usually a day ahead of any of the major news organizations on having the fix for any new virus out there. The new, creative, and dangerous virus are the ones that worry me not the 200th version of netsky that shows up.

    Perhaps the best way to control the spread of virus is to reverse engineer the OS/program that it is targeting...create fixes proactively and don't allow the exploits to be found in the first place. But there's probably a law or two out there that prohibits this kind of stuff, eh?

    1. Re:Reverse Engineering a virus... by zerguy · · Score: 2, Insightful

      You are correct. But can you imagine the uproar and legal battles that would ensue should anyone try to reverse-engineer, disassemble, or otherwise try to extract source code from Windows? This is exactly why there are no (or hardly any) viruses on Linux.

      --
      **This begins my ever-changing sig
      We need a -1 RTFA moderation option!
      **This concludes my ever-changing sig
    2. Re:Reverse Engineering a virus... by Swedentom · · Score: 2, Funny

      create fixes proactively and don't allow the exploits to be found in the first place. But there's probably a law or two out there that prohibits this kind of stuff, eh?

      Laws against writing secure software? Well yeah, that'd explain quite a lot. ;-)

      --
      Sig Nature
    3. Re:Reverse Engineering a virus... by FluffyPanda · · Score: 1

      It seems to me that of the thousands of viruses written for windows there must be a good percentage that are fully understood and documented on the major AV manufacturer's websites.

      It doesn't help stop the spread, it doesn't seem essential to detection, at best it makes removal a little more clear-cut.

      Reverse engineering a virus might be an interesting academic challenge, but it's probably not that helpful except at classifying variants.

    4. Re:Reverse Engineering a virus... by Nicolas+Pillot · · Score: 1

      "don't allow the exploits to be found in the first place"

      You mean do not try to find the problems, or not making any notice of upcoming problems ?

      The later is the better, but it is not really good, because there will always be people who hear about it and exploit it

    5. Re:Reverse Engineering a virus... by zerguy · · Score: 1

      All the security holes that plague Linux ? Are you kidding me?

      --
      **This begins my ever-changing sig
      We need a -1 RTFA moderation option!
      **This concludes my ever-changing sig
    6. Re:Reverse Engineering a virus... by Politburo · · Score: 1

      My software (AVG) is usually a day ahead of any of the major news organizations on having the fix for any new virus out there.

      That's because it's the AV companies putting out the press releases about these viruses. It takes the news organizations a day to rework the press release into a 'news item'.

    7. Re:Reverse Engineering a virus... by Pharmboy · · Score: 1

      Actually, I think its a good idea to have a group that doesn't make AV software, or operating systems, reverse engineer a virus.

      While I think Symantec, et al, are honest companies, I don't think they are working a way to make viruses obsolete (and themselves obsolete as well). MS is working on adding new features more than security, because you will buy it anway. My experience in life tells me that an educated outsider's opinion, if well researched, can be pretty damn insightful.

      I actually read the report (skipping over the assembly parts I dont understand) and saw a very methodical approach to it. They clearly state what software they use, why they picked Bagle, and said it was a very simple virus, and is a good candidate to learn on if you want to move on and learn more about malware. All and all, a good read.

      Think about Space Ship One. They could have said "well, NASA already knows about space, why should we bother?" but they didn't. To me, this is the same thing. An outsider looking in. Oh, and Lucent is not exactly new to computing, either.

      --
      Tequila: It's not just for breakfast anymore!
  6. Pinky are you thinking what I'm thinking? by FerretFrottage · · Score: 4, Funny

    I think so Brain...is the virus protected by the DMCA and the other various software laws that prevent reverse engineering? If so, who is really in the wrong here?

    --
    "Look Lois, the two symbols of the Republican Party: an elephant, and a fat white guy who is threatened by change."
    1. Re:Pinky are you thinking what I'm thinking? by Anonymous Coward · · Score: 3, Funny

      It's OK, as long as they are reverse-engineering it to port it to another platform. ;-)

    2. Re:Pinky are you thinking what I'm thinking? by Anonymous Coward · · Score: 0

      For the zillionth time -- the DMCA has to do with circumvention of copy protection. It has nothing to do with reverse-engineering.

    3. Re:Pinky are you thinking what I'm thinking? by Anonymous Coward · · Score: 0

      Almost right - the DMCA deals with circumvention of ANY protection of copyrighted material; copy protection is just one of these.

      Once you understand that, it's just algebra to get to an anti-reverse-engineering interpretation: Let the copyrighted material be the source code, and let the "protection" be the compilation to binary form.

      It may be that it is not legal to claim a copyright protection at all on the source form as distinct from binary (though it might be), but the DMCA seems to defer discussion on this, and provide a lot of protection for whatever may be allowed. In other words, if copyrights can protect source code under different terms from its corresponding binaries, then the DMCA will make it specifically illegal to decompile or produce tools for decompilation.

    4. Re:Pinky are you thinking what I'm thinking? by digitac · · Score: 1
      For the zillionth time -- the DMCA has to do with circumvention of copy protection. It has nothing to do with reverse-engineering.
      So if a virus has built in copy-protection to prevent piracy, then it would be illegal to reverse engineer it. Am I missing something here?
    5. Re:Pinky are you thinking what I'm thinking? by Anonymous Coward · · Score: 0

      They may be guilty of the crime of reverse engineering and violating copyright laws by engaging in this process, but in order to be charged someone must come forth as the creator of the virus and file charges that their copyright or trade secret has been violated.

      The world wins either way.

    6. Re:Pinky are you thinking what I'm thinking? by mwood · · Score: 1

      So some jerk goes to jail for a few months, and then takes Symantec for one...billion...dollars. I imagine there are a lot of people who would take that job.

    7. Re:Pinky are you thinking what I'm thinking? by julesh · · Score: 1

      So if a virus has built in copy-protection to prevent piracy, then it would be illegal to reverse engineer it. Am I missing something here?

      No, it would be illegal to provide other people with a tool that enabled illegal copying of the virus, or instructions on how to make illegal copies of the virus.

      Reverse engineering to determine how it works would still be perfectly legal. If describing how you did it would enable other people to make copies, then such descriptions would be illegal. But descriptions of how it works that exclude any such information would be fine.

      Twisted, but it kind-of works. Of course, the idea of 'illegally copying' a piece of software that produces copies of itself as a matter of course is a little strange, and I doubt any court would hold it up.

  7. it is heuristics by Anonymous Coward · · Score: 0

    and it has been in almost all virus protection and scanning programs for a long time.

    dumbass

  8. Well, if not by IncarnadineConor · · Score: 1

    Maybe it'll at least give us viruses (viri?) that consume less system resources. Release more efficient viruses. That will fix everything.

    1. Re:Well, if not by Anonymous Coward · · Score: 0

      viri is like octopi. NOT A WORD!!!!!!

    2. Re:Well, if not by JFitzsimmons · · Score: 1

      FYI: Viruses

      --
      Beware he who would deny you access to information, for in his heart he dreams himself your master. -Anonymous
    3. Re:Well, if not by IncarnadineConor · · Score: 1

      Well octopi obviously isn't a word since it's ancient greek, not latin.

  9. Netcraft confirms it:SOVIET RUSSIA jokes are dying by Anonymous Coward · · Score: 3, Funny

    Yup. Suck it.

  10. The lawsuit is coming by kuwan · · Score: 1, Redundant

    Now, just wait for the authors of the Beagle virus to slap them down with a lawsuit for reverse engineering their software. Something to the effect of:

    "You have violated the License Agreement of the Beagle virus through your reverse engineering activities. Your publication illustrating how to do this is a clear violation of the DMCA and induces others to also violate their license agreement. Please Cease and Desist all such activities and prepare to see us in court."

    --
    Not free as in effort, but I'm willing to try it.
    Free Flat Screens | Free iPod Photo

    1. Re:The lawsuit is coming by Anonymous Coward · · Score: 0

      I don'think so. Given that av-firms currently reverse engineer most of the viruses they scan for.

      What's more they have specialist (usually in house) tools to do the job.

    2. Re:The lawsuit is coming by kuwan · · Score: 1

      I don'think so. Given that av-firms currently reverse engineer most of the viruses they scan for.

      Well, yes, and that's sot of my point. We can all agree that viruses are evil and that they need to be stopped an taken care of as quickly and fully as possible. So it is OK for Anti-virus companies to reverse engineer the viruses (for financial gain) to provide a fix for them.

      By the same logic, some people (but not all) can agree that Microsoft is evil and should be stopped as quickly and fully as possible. So by their logic it is OK to reverse engineer Microsoft products for financial gain.

      The former is clearly acceptable and a viable and legitimate business model while the latter would get you taken to court by Microsoft's lawyers faster than you could get a virus running an unpatched install of Windows on the Internet. Oh and you'd also lose to Microsoft.

      --
      Sounds like a scam, but it works.
      Free Flat Screens | Free iPod Photo |

    3. Re:The lawsuit is coming by samon007 · · Score: 1

      This is exactly the point i was looking for, if you ban reverse engineering for commercial and private use, this also means, your ban it for a virii too. I think virii writer should employ a licence agreement in there virus, what says, if you reverse engeneer beyound this point, this is illegal and if they get accuesed for writing a virus, they should sue the AV industry for breaking the DMCA. This can be simplified by embeding the authors name in the code, so that almost every attempt to unveil the authors identity is done by reverse engineer the code. A lawsuit against Police and AV-industry is sure in this case.

    4. Re:The lawsuit is coming by mwood · · Score: 1

      I'd like that. So, if I click "I do not agree", then I'm not permitted to have my computer infected by the virus and it will exit? Brilliant!

    5. Re:The lawsuit is coming by samon007 · · Score: 1

      Sounds like a brilliant brand new concept for making money. ... what i mean was, why don't hide an EULA in code, just and only for anti virus industry.
      Not the user has to agree to terms.. this is the point, where userrights will be broken, but a av-engeneer at work will have to agree, that he have no rigths to break and analyse the code of the virus.

      Between breaking the rights of the "enduser", which computer gets infected and the rigths of the author, which copyright and intellectual property will affected, there is a difference.

      If you protect intellectual properties by law, you have protect intellectual properties of the author of a virus also.

      I say you have to go even further and patent the algorithm of your virus. ...so no one can developing antivirus software or a clone of you virus without breaking patent laws or paying licence fees.

    6. Re:The lawsuit is coming by Sigma+7 · · Score: 1
      'd like that. So, if I click "I do not agree", then I'm not permitted to have my computer infected by the virus and it will exit? Brilliant!
      It won't be long before the virus writers begin to play tricks - things like flipping around the "Yes" and "No" buttons around (so that people who instinctivly click on "No" will accidently hit "Yes" instead).

      Alternativly, the virus could blackmail the user by stating that diagreeing would trash the data on your hard drive. This is very similar to the old Casino virus that had the user "gamble" to retain his data.
    7. Re:The lawsuit is coming by mwood · · Score: 1

      Fraudulent or coercive behavior also voids the agreement, plus you can then go after the miscreant for fraud or racketeering. Just imagine someone standing before a judge to state, "I am John Doe and I made threats against that 8-year-old over there in order to force her to accept the running of illegal software on her computer. I am seeking $100 million in damages from the 8-year-old who, I shall prove, used Task Manager to abort my virus instead of answering the dialog."

    8. Re:The lawsuit is coming by Sigma+7 · · Score: 1
      Fraudulent or coercive behavior also voids the agreement, plus you can then go after the miscreant for fraud or racketeering.
      I am aware of that, but there are many people who do not.

      There are also reports about contracts made under questionable circumstances in some countries where contract law is not as well defined (although not forceful, more like a false pretence by incorrectly telling the illiterate signer that he'll get 100 thousand dollars instead of 10 thousand.) Plus, there have been movies where coercive contracts were treated as legally enforcable (and thus people believe they are valid.)

      The tricks that I'm talking about aren't meant to be valid - just believable enough to fool a person into thinking they are (or some other false pretense). It worked for the Casino virus, and it will work for later viruses.
  11. This isn't reverse engineering at all! by Anonymous Coward · · Score: 3, Insightful

    Virus are not protected by copyright, patents etc.
    Reverse engineering is when you disassemble and recreate a the original source (which they did) -- the easy part. Then, the hard part is to create a set of specifications without referring to the original code or snippets, then handing that over the "wall" to someone who has not been exposed to any of the IP of the original and rewriting the code from scratch ... that is what Compaq, Phoenix, and the others had to do with BIOSs and people emulating Windows, Unix etc had to do, otherwise, they would just be copying from the original and rewriting (trivial in comparison). Let's start using the appropriate terminology.

    1. Re:This isn't reverse engineering at all! by P-Nuts · · Score: 1
      Virus are not protected by copyright, patents etc.

      Is that strictly true? Suppose I write a virus. That in itself isn't illegal, as long as I don't release it in the wild. But it is a creative work, just like any other software, so I automatically get the copyright as its author. Sure, it's unlikely that a virus author is going to sue people for breaching copyright, and there will be various fair-use arguments (dissassembling something for compatibility is allowed; to make a virus compatible with the rest of the computer it needs to be destroyed?).

    2. Re:This isn't reverse engineering at all! by Daengbo · · Score: 4, Informative

      No. What you described is clean-room reverse engineering. Regular old run-of-the-mill reverse engineering means taking the "black box" and figuring out exactly what it does.

    3. Re:This isn't reverse engineering at all! by radish · · Score: 2, Interesting

      Of course a virus is protected by copyright. It's something that someone created, thus, unless they explicitly gave up their rights, it's fully protected.

      --

      ---- Den ene knappen er powerknapp, den andre er Bender voice knapp "Bite My Shiny Metal Ass"

    4. Re:This isn't reverse engineering at all! by Tenebrious1 · · Score: 1

      Virus are not protected by copyright, patents etc.

      Sure they are. See, a "virus" is a program, and the source code is copyrightable, and patentable as well. Otherwise there'd be no point to the second half of your post, anyone could just use Phoenix BIOS as their own.

      Every virus I've written is copyrighted to me. Now, I don't consider them viruses. Some spyware and anti-virus software will identify them as viruses, because the code will behave in viral like ways such as deleting files and making registry changes... but well that's what my IE cache/history cleaner is meant to do. Since I wrote it and have the source code printed out, it's covered by copyright. The only reason it's not patented is because there's too much prior art.

      --
      -- If god wanted me to have a sig, he'd have given me a sense of humor.
    5. Re:This isn't reverse engineering at all! by Anonymous Coward · · Score: 1, Informative

      The term "reverse engineering" simply refers to studying how a product works, usually to learn more information about the internal details than is published by the manufacturer. That's all.

      Reverse engineering is NOT the subsequent creation of another product that utilizes this information. The term for that is plain, simple engineering (without the "reverse" prepended).

      The discovery of unpublished information is still reverse engineering, regardless of what is done with that information. It does not matter if it is forgotten, used by the same people, or "thrown over the wall" as in the famous Compaq case of creating a workalike PC bios.

      There is also a common misconception that reverse engineering, to be "legal", must necessarily be done by different people than those who utilize that information to do regular engineering (usually to produce an interoperable product). Just because Compaq used an ultra-conservative approach, intended to make defending themselves against IBM, does not mean that a less conservative approach is illegal. Ultimately, what is legal vs unlawful is decided in court. There is a lot of case law where reverse engineering was considered lawful WITHOUT the "thrown over the wall" approach that Compaq used.

    6. Re:This isn't reverse engineering at all! by cbrocious · · Score: 1

      This is wrong on oh-so-many levels.

      "Virus are not protected by copyright, patents etc."
      _ALL_ software is protected by copyright unless the author(s) explicitly release copyright. Just because the authors don't want to be known doesn't mean they give up their rights.

      "Reverse engineering is when you disassemble and recreate a the original source"
      Reverse-engineering is the process of figuring out the processes and algorithms used in a piece of software/hardware. Creating the source (no matter how close it is to the original) is done either by means of decompiling (taking the machine-code or ASM of the application and converting it to a high-level language like C. not really practical for most things yet, especially virii) or engineering (taking the information you got and writing the code primarily by hand)

      "Then, the hard part is to create a set of specifications without referring to the original code or snippets, then handing that over the "wall" to someone who has not been exposed to any of the IP of the original and rewriting the code from scratch"
      Most of what I do is reverse-engineering, and I can tell you from experience that this is _not_ neccesary, and I'd be willing to contact my IP lawyers for further confirmation on this (my company has been working on a decompiler for a while now, and the legalities are a large concern for us). There are many things (even the DMCA assists in this respect) that help protect reverse-engineers.

      Hope this helps clear up some of the confusion brought on by the parent post.

      --
      Disconnect and self-destruct, one bullet at a time.
    7. Re:This isn't reverse engineering at all! by Anonymous Coward · · Score: 0

      It's a sad comment on the state of the Slashdot community and the moderation system that this terrible post, which is completely wrong (the poster apparently doesn't even know what "reverse engineering" means) is still at +4 long after many posters have replied and explained how it erred. None of those posts are modded up either.

      Sad, sad. The ignorance is so thick around here you could drown in it.

    8. Re:This isn't reverse engineering at all! by Anonymous Coward · · Score: 0

      Anything fixed into tangible form (e.g. a hard drive) is most certainly copyrightable. Just put a copyright notice on it.

      Yeah, they'd have to register it to sue for infringement, and they could do that later, and it'd be damned stupid to register the copyright on your viruse, giving them all your details on who did it, but it'd still be copyrighted.

      And they could patent it too :P Only thing it probably isn't is a trade secret if they release it for all the world to see via being infected.

  12. Best...Villain-Name...Ever by Anonymous Coward · · Score: 0

    I'd just like to say that this guy's e-mail address is the best villain name ever. Come on... Krozinov!

    So awesome.

  13. Re:Advertising?? by Anonymous Coward · · Score: 0

    Readers of Slashdot.com are often influential in their company's purchasing decisions.

    Actually, I am influential in my companies purchasing decisions. Unfortunately I never get around to approving the purchase orders because I'm always reading /.

  14. Legal? by olddotter · · Score: 0, Redundant

    So is this legal under the DMCA? Someone just had to ask.

    1. Re:Legal? by Bill+Hayden · · Score: 1

      It's just a clever sting operation to get the original author to come forward and file a DMCA claim. Then whammo, they slap the cuffs on...

      --
      Protect your browser with the Force Safe Search add-on
  15. What about worm EULAs? by G4from128k · · Score: 4, Funny

    Coming in a packet near you, from the EULA of the future:

    By connecting a computer to the internet, you hereby agree to the terms of this agreement (hereafter referred to as "deal with the devil") for this software (hereafter referred to as "CPU sucking nightmare") ......

    Won't surprise me if virus/trojan/worm/spyware writers use IP law against those that would hope to rid the world of their menace.

    --
    Two wrongs don't make a right, but three lefts do.
    1. Re:What about worm EULAs? by oberondarksoul · · Score: 2, Informative

      They'd never be able to; to come out and say "you reverse engineered my virus" would be a confession of having written the virus in the first place, and would probably result in their prosecution. If I were a virus author, I'd keep my head down whilst inwardly laughing, not pop out and say 'I did it'.

      --
      And tomorrow the stock exchange will be the human race
  16. Well... by bmo · · Score: 3, Interesting

    Wouldn't the first goal be writing applications and operating systems to be more secure than they are now with ordinary common sense designs? You know, like not tying userland software to the OS in incestuous ways?

    Simple stuff like that...

    Get rid of IE and get rid of Outlook Express and you get rid of 90 percent of the threat.

    This would be a plug for Linux, as I use it daily, but there are things that Windows users can do to keep from being screwed every day. If only Mickeysoft helped their users rather than write crap software.

    --
    BMO

    1. Re:Well... by pjrc · · Score: 1

      Been tried, didn't work.

      Didn't stand a chance against applications and operating systems first written to obtain and entrench an air-tight monopoly hold over the entire software industry, rather than a common sense design. You know, like not worrying about quality when there's an opportunity to tie products together and leverage an existing monopoly to destroy the market for a competitors product, leaving only yours.

      Simple stuff like...

      Tying the gui, browser, media player into the operating system and forcing exclusionary contracts on all PC vendors. Get rid of Ditial(DR-DOS), Netscape and Real Networks, and you get rid of 90% of the threat to your monopoly profits.

      This would be a plug for MSFT stock. If only Linus had used ruthless, underhanded tactics...

  17. Too much indirection by shoppa · · Score: 4, Insightful
    Viruses/Worms themselves work usually be finding a buffer overflow in an OS or application. They are themselves the result of reverse engineering.

    It would seem a better defense to use whatever reverse engineering tools are available to fix the application. Things like Purify etc. are of some use for many common problems.

    Adding additional/patched code onto a virus/worm sounds like dangerous business to me. Suppose you didn't do everything exactly right, you are now responsible for releasing a new virus into the wild.

  18. Should Read by Phixxr · · Score: 0, Troll
    "Can posting your own half-baked paper to slashdot make you famous"...

    Or... Dissassembly For Dummies.

    -phixxr.

    --
    ungggghhhh
  19. Understanding The Pathology Is Important But... by EXTomar · · Score: 4, Insightful

    To borrow the medical anology, pathology of a virus is important but this alone will not create a "cure". You may understand completely how a virus works but this alone does nothing to hamper it.

    To even be more suscinct, if all it took to stop a virus was to reverse engineer it (ie. pathology), then we'd have things like AIDS, Herpes, etc. beat long ago. We clearly understand how these things spread yet infections still happen. Likewise, we already know a lot how virii spread on Windows and form best practices and yet comprimising still happens.

    1. Re:Understanding The Pathology Is Important But... by Anonymous Coward · · Score: 1, Funny

      Sounds like we need some sort of "anti-virus software" to fight viruses. If only some sort of "anti-virus company" would come forward to produce this "anti-virus software", we'd all be saved.

    2. Re:Understanding The Pathology Is Important But... by Anonymous Coward · · Score: 1, Informative

      It's useful to compare the way in which viruses infect both cells and operating systems.

      Viruses find a way into a cell by penetrating the cell membranes and getting as far as the production machinery of the cell. Some ways of achieving this are by having a protein coating that allows the virus to get through cell walls and. Other ways include slipping in through the receptors on the cell surface.

      With computers, these are the equivalent of trojan horse, and buffer overflow attacks. A virus doesn't have to get as a far as the cell nucleus or kernel. It just has to get as far as something that allows the virus to make copies of itself.

      The immune system is our equivalent of anti-virus protection, but even in our system, it is possible for it to create false positives (ie autoimmune diseases). It works by detecting protein fragments that are not normally found in the body.

      With both systems (biological and digital), the battle is reduced down to detecting particular combinations of sequences (protein or byte) that never change. And like AIDS, some computer viruses are able to restructure themselves to avoid detection.

      The main ways of preventing virus infections are well known:

      1. Have up to anti-virus software

      2. Avoid the use of scripts that can be downloaded and executed arbitarily, and which have full file and network access.

      3. Unfortunately, the use of plugins can allow this to happen. Simply by having web browser that allows you to download any particular file type and a desktop which allows you to automatically run an application associated with that file type, the responsibility for your system security is no longer owned by a single process.

      o Avoid the use of compressed data formats that allow ambiguous decompression sizes (eg. have a local buffer preallocated to a particular size, assuming that no run-length sequence wlll ever exceed this size), thus allowing stack overrun attacks. This includes audio, video and image and volume data. Fortunately, this is fixed by the no-execute bit.

    3. Re:Understanding The Pathology Is Important But... by Anonymous Coward · · Score: 0

      To even be more suscinct, if all it took to stop a virus was to reverse engineer it (ie. pathology), then we'd have things like AIDS, Herpes, etc. beat long ago.

      To put it more succinctly, our problem curing AIDS (and pretty much any other disease that's emerged in the last 50 years) is economic, not scientific. Long-term treatment means long-term revenue for drug companies. There's a lot less money to be made from a one-dose cure.

    4. Re:Understanding The Pathology Is Important But... by julesh · · Score: 1

      To borrow the medical anology, pathology of a virus is important but this alone will not create a "cure". You may understand completely how a virus works but this alone does nothing to hamper it.

      This breaks down trivially when applied to computer malware. By reverse engineering a computer virus (or other malware) you can tell how it spreads, and exactly what damage it does. By knowing how it spreads you can always avoid becoming infected. By knowing what damage it does you can always remove that damage.

      I suspect the same would be true of biological viruses, if we understood the workings of the human body as well as we understand computer software.

  20. DMCA violation by Phleg · · Score: 0, Troll

    You heard me.

    --
    No comment.
  21. It's easy and it wont' work. by sporty · · Score: 3, Insightful
    A virus exploits something about a system.


    Back in the DOS days, the fact that code on a floppy header or something would get executed on insertion was a problem. Solution, don't bring that into memory for execution.


    Word, at a point, by default, would execute macros on load of a document. Don't bring in code from a document and execute it.


    In outlook, looking at email can cause JS to execute which may have it's own problems due to the implementation of js. Don't execute the JS.


    Don't try and figure out how viruses work. Figure out what they exploit and close them up. Duh.

    --

    -
    ping -f 255.255.255.255 # if only

    1. Re:It's easy and it wont' work. by Travis+Fisher · · Score: 1
      • A virus exploits something about a system.

      Yeah, but a lot of modern email viruses just exploit the part of the system between the keyboard and the chair. Unfortunately no-one has worked out how to issue auto-updates for this part of the system...

    2. Re:It's easy and it wont' work. by Sigma+7 · · Score: 1
      Yeah, but a lot of modern email viruses just exploit the part of the system between the keyboard and the chair. Unfortunately no-one has worked out how to issue auto-updates for this part of the system...
      Auto-updates might not be possible for that component, but certification is.

      Doctors, Lawyers, Drivers, and other trades or tasks are given a license recognised by the government stating that you are qualified for the task in question. Apply the same to computers, and the problem is solved. (Of course, this requires a social engineering change because people consider Computers and the Internet to be magical devices that do stuff for them, and they can't live without it.)

  22. Subtle dig at SCO on page 7...? by GojiraDeMonstah · · Score: 0, Offtopic
    From TFA:
    Object files and executables come in several formats. One is ELF (Executable and Linking Format) and another is COFF (Common Object-File Format). ELF is used on SystemVr4 UNIX systems, while COFF is used on Windows systems.

    This article and others detail SCO's failed attempt to support its claim to ownership of Linux with its claim that it (SCO) owned ELF.

    I believe it is the case that SCO is only claiming ownership and suing people over the VR5 Unix source and derivatives (aside: what exactly SCO owns of VR5 and any of its derivatives, or even what those derivatives are is under intense debate, as you may have noticed). Pre-VR5 elements of Unix (IIRC) are not being contested by SCO.

    Yeah yeah yeah it's a long way to go for not much payoff. But maybe the ELF fuss inspired the author to have a little fun by shoving SCO's nose in the fact that ELF was pre-VR5...?
    --
    "Stop throwing the Constitution in my face, it's just a goddamned piece of paper!" - George W. Bush Nov. 2005
  23. Why RE? by RAMMS+EIN · · Score: 2, Insightful

    Why reverse-engineer? Most malware is put together by script-kiddies from parts they get from elsewhere, and a lot of information is publicly available. If script-kiddies can get their hands on it, so can you.

    --
    Please correct me if I got my facts wrong.
  24. No-execute stacks... by PornMaster · · Score: 1

    I've Googled and been unable to tell if the Prescot P4-E has the NX, XD, or whichever acronym anyone would like to use to signify the No eXecute/eXecution Disabled stuff.

    All that I come up with is that stuff "late this year" from Intel will have it, and that AMD64 has it.

    1. Re:No-execute stacks... by Anonymous Coward · · Score: 0

      I like puffy nipples [ilikepuffies.com], do you?

      No, I don't

    2. Re:No-execute stacks... by Anonymous Coward · · Score: 1

      Intel just released the P4 570 J today. The 'J' denotes the 'no-execute' bit.

  25. An interesting read by Pinkoir · · Score: 3, Funny

    I would like to thank the author of that paper for making it abundantly clear to me that I am not smart enough to operate independently in today's technological environment. I would like to take this opportunity to bow down before my compsci-savvy overlords swear to just mindlessly accept whatever code they produce.

    -Pinkoir

  26. Little help, but help anyway... by gmuslera · · Score: 2, Informative

    3 points:
    - knowing how it technically works dont disable the social engineering component, very trivial worms were very sucessful just for that.
    - there are a lot of worms that have the source available in a way or another, from the first ILoveYou worm (well, most .vbs ones are that way) to latests Bagle or Netsky variants, that even have the source attached.
    - Some worms also are maybe simple exploits of software vulnerabilities or weakeness (mostly MS.*, but there are some for other developers and operating systems). What must be understood there is not the worm source, but what it exploit and why that software is used.

  27. This is about programs, not biology. by khasim · · Score: 3, Insightful
    what happens when they reverse engineer the reverse engineering you did on the virus they originally wrote? if we look into the biological field, fighting viruses only makes them stronger. Not that we shouldn't but the better the anti virus writer becomes, the better the virus writer already is.
    Hardly. If that were so, then Linux would currently be under attack by the toughest viruses and worms ever seen.

    Viruses and worms exist because security models and implementations have vulnerabilities.

    You see so many Windows viruses and worms because Microsoft's security model has some very basic flaws. Instead of dealing with them, Microsoft relies upon 3rd party anti-virus companies to issue very specific "patches" for each virus that comes out.
    1. Re:This is about programs, not biology. by redJag · · Score: 1

      Or, like in biology, the viruses are written for Windows because the Linux population isn't large enough to support a virus population ;)

    2. Re:This is about programs, not biology. by maxwell+demon · · Score: 1

      Please show me a biological population free of virus deceases doe to being too small.

      However, maybe the fact that chosing Linux needs an active decision, and therefore a minimal intelligence, helps a bit here: The script kiddies won't target Linux, since they don't have a clue about it.

      --
      The Tao of math: The numbers you can count are not the real numbers.
    3. Re:This is about programs, not biology. by BeerCat · · Score: 2, Interesting

      he script kiddies won't target Linux, since they don't have a clue about it.

      For now. I am reminded of Ken Macleod's "Cassini Divsion", where all electronic computer systems have been compromised by the "fast folk". An initial attempt to fight them, using a ship controlled by a different electronic system, succeeds for a bit, but is quickly also taken over, as the viruses mutate enough that even a different operating system is not effective protection.* So, for the sytstem used by the "fast folk" read Windows (all varieties), and for the "other" system read Linux / OS X (IIRC they thought they were safe because the hardware was different)



      *They succeeded by using mechanical computers, akin to those in Gibson's "The Difference Engine" (a novel that assumed that Babbage's difference engine was not only built, but mass produced)

      --
      "She's furniture with a pulse"
    4. Re:This is about programs, not biology. by Feanturi · · Score: 1

      Hardly. If that were so, then Linux would currently be under attack by the toughest viruses and worms ever seen.

      The point of that would be what? Get some more market share and then we'll talk about whether or not it's worth the effort.

  28. Or we could stop relying on insecure technologies by RAMMS+EIN · · Score: 1

    Instead of figuring out how worms work by reverse-engineering them, we can also get smart, read a security list, figure that most of the problems we have come from using insecure programming languages, and switch. It's not like there aren't better options than C and C++.

    --
    Please correct me if I got my facts wrong.
  29. Am I missing something here? by krvw · · Score: 3, Insightful

    I've got to be missing something here. Reverse engineering worm/virus code with tools like IDA Pro has been actively done by the anti-virus community for 17+ years. In November 1987 when a virus hit us at Lehigh University (where I worked at the time), a bunch of our students helped out by disassembling the virus and writing a piece of software to prevent it from spreading further.

    And we didn't feel that this was even groundbreaking work back then...

    What am I missing here?

    Cheers,

    Ken van Wyk

    1. Re:Am I missing something here? by Anonymous Coward · · Score: 0

      Ken-

      An idea need not be groundbreaking to be interesting. Articles posted to slashdot are indended to provide an audience with information they may be interested in. This article is both interesting and informative - While its inclusion on Slashdot may not signify a watershed moment, it is nonetheless an article geared for this community

    2. Re:Am I missing something here? by krvw · · Score: 1

      Anonymous Coward -

      No, you misunderstood me. Putting it on /. is fine. I was wondering why the paper was published in the first place. It seemed to indicate that new, groundbreaking work had been done, but IMHO the practices described in the paper have been in common practice for many years.

      I wasn't questioning its inclusion on /.

      Cheers,

      Ken

    3. Re:Am I missing something here? by Todd+Knarr · · Score: 1

      I think what's missing is an entire generation of programmers. Those of us who got their start up through about the mid-80s (on the original PC, XT and AT) knew the technical ins and outs of both our own code and the OS. The current generation grew up with development environments and application frameworks divorcing them almost completely from how the system really works. It's not that they don't know what's going on "under the hood", it's more that they don't know there is an "under the hood" in the first place.

      Given that, it doesn't suprise me that the current crop is suprised by what I consider standard virus behavior: stealthing, polymorphism, encryption and the like. It still amazes me that people, for example, trust AV software which depends on services from an OS which is known to be controlled by the virus we're trying to detect. Or that a virus trying to disable AV software is considered unusual enough to be worth noting (I assume any virus worth the name is going to do something to try to prevent AV software from seeing it).

  30. Not the DMCA again! by Anonymous Coward · · Score: 0

    Does every slash dot post always have to degenerate into anti-DMCA rants!

    Don't you think that there are other places you can talk about that?

    Yes, we all know that the DMCA is flawed and will have to be changed. Can we not talk about anything without being reminded of that?

    Oh, I suppose someone will bring up George Lucas too, another favorite (and inane) slash dot topic better discussed elsewhere.

  31. E-Mail lists by Andrewkov · · Score: 2, Interesting

    One interesting point of the article -- The Bagle virus seaches the hard drive for email addresses to send itself too. If Outlook, Mozilla Mail, and other email clients used encrypted contact lists, that would prevent a lot these worms from propagating. I hope that's something that email client vendors will look at.

    1. Re:E-Mail lists by StormReaver · · Score: 2, Insightful

      "If Outlook, Mozilla Mail, and other email clients used encrypted contact lists, that would prevent a lot these worms from propagating."

      The email program itself would need to decrypt the list in order to use it. Any 3rd party program which requested email services from the email client (think COM) would need to have an exposed API to call in order to request that service. A virus would only have to call that API to decrypt the list.

    2. Re:E-Mail lists by izomiac · · Score: 1

      Well, just have it prompt for a password in order to decrypt the contact list (and don't keep the password or list loaded in memory). Of course I would guess that a lot of windows users would just type in the password whenever they were asked (even if outlook wasn't open at the time), so encrypting the contact list would probably be more trouble than it's worth.

    3. Re:E-Mail lists by Cardbox · · Score: 1

      Better still (and requiring no reprogramming): create a separate contact list with a million random email addresses and never use it yourself. [Either use a separate category, or create an Outlook Express list when you never actually use Outlook Express yourself or a Eudora list if you never actually use Eudora].

      If it gets harvested then it reduces the value of the harvested list (arbitrarily close to zero, if enough people do this).

      If a worm on your own computer tries to use the list then there are all sorts of possibilities: you may just reckon on noticing if that many emails are being sent; you may find a way of monitoring outgoing emails and immediately halting transmission if one of the addresses gets used (a good new feature to add to antivirus software); or you may include "canary" addresses in that list that will cause you to be alerted when they're used.

  32. Guaranteed to be Too Late by RAMMS+EIN · · Score: 1

    Reverse-engineering takes time, and can only start when the worm is already out. It's guaranteed to come too late. Switching to secure technologies before the exploit comes is the only way to stay ahead.

    --
    Please correct me if I got my facts wrong.
  33. Exploit the worm's scanning engine to slow it by ftzdomino · · Score: 4, Informative

    Most worms these days scan IPs to find other exploitable hosts. I always thought we should look for exploits in the worm's scanning engine and then attempt to crash it by responding to its scanning requests with data which would do something like exploit a buffer overflow or off by one attack. These crashing response daemons would be located on systems which don't normally take requests of the service type the worm exploits. That way these would be very unlikely to affect anything legitimate. A worm whose scanning code has been crashed would be unlikely to infect other systems. It's also unlikely that crashing the scanning code would affect other services on the infected machine, limiting the legal liability of such a thing.

    I've had some luck against people scanning web servers for formmail.pl scripts. My formmail.pl sends random data without any CR or LF. One script so far accepted 2gb of data before disconnecting.

    1. Re:Exploit the worm's scanning engine to slow it by Cardbox · · Score: 1

      No. Viruses are small. Applications are big. It's easy to write bug-free small programs.

  34. Could DMCA apply? by Siderean · · Score: 0

    Could a virus author, on his way to jail, sue your butt off for reverse engineering their code, if he/she put "copy protection" (obfuscation) in it?

  35. Been done by wayne606 · · Score: 5, Interesting

    I remember when the RTM worm first appeared (was that '86?) and several Berkeley students stayed up all night decompiling it (this was VAX code so it was a bit more manageable). They posted the source code the next morning with bug fixes, including the critical one that turned the worm from a slow-moving annoyance to a rampaging network-killer...

  36. Understanding viruses and warms by demon_2k · · Score: 1

    The key to manipulating anything is to understand how it works. Since viruses and worms are just "bad" programs or pieces of code that manipulate other programs (eg. MS Outlook), there should be no reason why you couldn't reverse engineer then. Assuming they can be found.

    I thought those methods were already used? What to companies making anti-virus applications to to understand viruses?

  37. av companies... by Anonymous Coward · · Score: 0

    Antivirus companies have been reverse engineering viruses for like, ever. Asking "how do you do that" reflects some amount of ignorance in this field, which then kind of removes any sort of weight the paper's conclusions might have otherwise had.

    Hardly a "research" worth posting, although nevertheless an interesting school paper subject.

  38. Used mostly DOS "debug" by Anonymous Coward · · Score: 1, Interesting

    10 or so years ago I used to do a lot of assy code and Reverse Engineering. Found ways around software keys, etc.

    At a company I was working for, somehow someone downloaded a boot-sector virus (BBSes- we didn't have Internet there yet.) My biggest clue came when I tried to just read from a write-protected floppy, and I got "write-protect" errors!!

    I forget the virus's name, but it's still detected by current CA, Norton, etc.

    Getting to the point: I used "DOS's" "debug" and "Sourcer" to reverse engineer- mostly debug, in script mode, dumped out the reverse assy. listing, and just followed it.

    BEWARE! (1) The virus had several do nothing loops which would waste your time and drain your patience.

    (2) early in execution the virus would trap INT1- the single-step interrupt, and point it wildly into RAM somewhere, thus crashing your machine when you try to single-step (Trace) in debug! Look at the listing first, find that INT1 trap, and jmp around it.

    (3) the thing that started me hating MS: the virus used many undocumented DOS calls!!!! The power to embed and replicate was in DOS!! I'm not kidding. I don't know why that functionality existed in DOS and I forget if it's in my "Undocumented DOS" book. I just remembered being so disgusted (angry maybe) that I determined to move toward *nix, found Linux, and have been very happy ever since (except when people ask me to help with Windoze problems, but that's another issue...)

    Happy "Debugging"!!!!

  39. Stopping worms by dave420 · · Score: 1
    Due to the fact they're written by people, you can't stop them beforehand.

    The best way to stop the current ones, is to analyse their network usage, and block it. I did it last week, and our network is stable and not spewing filth everywhere. :)

  40. Nah, worm writers should get it right by iamacat · · Score: 1
    And release open source worms. Dump the source code to c:\worm on an infected machine. Don't forget a GPL comment in each file and COPYING that explains how you are required to "distribute" the software+source to everyone in your address book, or every machine on the subnet.
    • It will not help AV companies much since they already reverse engineer binaries
    • People will release improved derivitive worms and malicious payloads you don't have to be responsible for.
    • The joy of releasing software under a truly viral license!
    1. Re:Nah, worm writers should get it right by freax · · Score: 1

      IMHO, we should indeed start such a project on, for example, sourceforge.

      An opensource project that would show how easily writing worms and/or virusses can be done.

  41. Can Reverse Engineering help stop worms and virii? by DrDebug · · Score: 2, Insightful

    Simple answer: No.

    The worm (or virus) is already out in the wild. Seeing how it works won't stop it.

    But seeing what it exploits might.

    There is a 99 percent chance that the worm/virus will exploit a known hole in the target application/operating system. Nowadays, these exploits have come much, much quicker than in the past. It used to be a few months before a hole was exploited; now it can be just a matter of hours.

    What would impress me is if they reverse-engineer a worm/virus and find that it exploits a hole that was unknown beforehand. Now THAT would show some intelligence on the part of the author (if not any ethics). The 'kiddie-scripters' that mutate the source code from a worm/virus and just hex-edit their initials into it aren't very creative at all; just adolescant vandals who want to make their mark with their brethern vermin in the dark underworld of the Internet.

    It's not that virus/worm authors are anything to be emulated. But you have to respect them. Like you have to respect terrorists. You may lothe them, but you have to respect them.

    However, reverse-engineering IS useful. It is forensics. Someday, maybe soon, the forensics team will be able to catagorize and maybe even identify the author of a virus by the way it is written. Currently, it is helpful in finding those security holes, so they can notify the authors of the program being attacked.

    Let's face it folks. Programming is still more of an art than a science. We imperfect human beings are trying to write perfect code, because the computer does exactly what it is told to do. We humans don't operate at that level very well. So we write imperfect code; something that can be eventually exploited given time and resources of anyone willing. It's gonna happen, whether your code comes from American, Indian, or Ukranian programmers. There are evil people out there, and they are going to check the doorknobs of every program to see if they can get it and cause trouble. Until someone comes up with a source-file hole checker, be prepared for more worms and virii.

    OK, I'm done ranting.

  42. Here are some facts for your reading pleasure by Anonymous Coward · · Score: 0

    > Can Reverse Engineering Help In Stopping Worms?
    If you're running Windows, no, the only thing that can help you is to format your hard drive and install Linux. It's not enough to just buy a computer and log on and hope that Microsoft did their job and that Windows will protect you, because I am here to tell you the same thing that millions of others will tell you... Microsoft didn't do a good job and Windows won't protect you.

    Windows, whether you choose to believe it or not, is the worst OS on the planet. Microsoft Windows makes it rather easy for a hacker or script kiddie to break into your Windows machine and steal your personal information or install a keylogger or mouse mapper. A keylogger keeps track of all the keys you press and sends this info to the person who installed the key logger. A mouse mapper collects info about where you mouse cursor is at any given time along with which mouse buttons you press, this info is also sent to the person who installed the mouse mapper. Windows also makes it far to easy to catch viruses/worms/trojans/malware/spyware/etc. If you are using Windows and you haven't become a victim of identity theft, it is only a matter of time before you do.

    Besides that, Microsoft lies, cheats, and steals to promote their company - they even got caught trying to fake evidence in court. Their "Get The Facts" campaign is the biggest bs-fest I've seen in a long time. Does this sounds like a company you want to do business with? Do you really think such an untrustworthy company is going to help you or indemnify you if your Windows operating system causes you to get into trouble?

    Here are some facts:


    Windows is just full of problems and here is how to solve those problems. First of all, you need a good Linux operating system. You can go to Distrowatch and find more information about Linux distributions than you could ever want. You can also go to the Mandrakelinux website and check out their Linux distro and see some screenshots of Mandrakelinux.

    Secondly, learn about your computer. You paid money for it, and you trust it with personal/private information. You must learn how to protect your computer if you expect your computer to protect the information that it contains. Microsoft Windows is not going to protect you or your computer - as many people have already learned.

    It is not in your best interest to use Microsoft products because they are known only for failure and problems. Switch to Linux and learn about this awesome operating system. You'll thank me later :)
    1. Re:Here are some facts for your reading pleasure by Anonymous Coward · · Score: 0

      Nice post.
      What you forgot to mention is that most Linux operating system are free. Free to download, free to install (on an unlimited number of computers), and free to run without need for registration or activation. you can install and run it on billions of computers and you're not breaking any license or law. I run have Slackware for 2 years and I have paid a total of about $50.00 in costs - and that was only for blank CD-R's to make backups of my system.

      I used Windows until my computer was broken into and my personal info used for identity theft purposes... what's more, I didn't even know there was a break in at the time.

      Windows sucks! Linux rules!!!

  43. Thanks for the tip :) by Anonymous Coward · · Score: 0

    i'd never heard of Purify, just things kinda like it, but after reading some pages on it - damn, thanks for the tip :)

  44. Sanitary practices and the evolution of germs by Frater+219 · · Score: 4, Insightful
    In the realm of biological viruses and bacteria, there are steps we can take to discourage the evolution of worse and worse plagues. Although computer viruses are designed rather than evolved, some of these may apply to the computer realm as well.

    It's well-known that a parasite that kills its host damages its own chances for survival or reproduction. A germ that doesn't make you sick enough to stay home from work leaves you in able condition to cough that germ all over your coworkers. One that kills you right off has a much decreased chance of spreading to those people ... that is, unless your town is in the habit of leaving corpses lying around.

    If germs in corpses are able to infect the living, then there is much less "incentive" for germs to leave their hosts alive. If, on the other hand, your civilization isolates corpses, especially obviously infectious ones, then being in a corpse becomes a bad replication strategy for a germ.

    This is clearly a way in which human cultural practices affect the evolutionary environment of infectious disease organisms. Under medieval conditions, the Black Plague was pretty darned optimal as a survival strategy. In isolated villages in Congo, the Ebola bacterium can leave messy, nasty corpses lying around and still survive. In places with more effective medical response, that would not be a very effective survival strategy.

    What is the analogy to computer viruses? Right now, large portions of the Net have ridiculously crappy "medical response" to computers that are effectively "killed" (rendered useless) by virus and worm infection. Most commercial ISP networks are, to the unprotected Windows computer, the equivalent of rolling around naked in medical waste. This septic environment, in which dead and dying bodies are left to rot and spread their infections, just promote viruses that completely overwhelm the host.

    Moreover, the average Windows system and user have the equivalent of terrible hygiene practices. Personal hygiene, in the real world, means that you avoid filthy things when you can; you wash when you've come into contact with them; you wash regularly even if you don't think you have filth on you; and you make sure not to mix filth with your food. Public hygiene means that your society keeps filth and corpses away from the food supply, and keeps rotting garbage off the open street. When these practices break down, you get plagues.

    How to prevent this? First, some rudimentary public sanitation would help -- when a system is infected, it must be quarantined and prevented from infecting others. Second, computer users must learn to choose software which has good sanitary practices -- isolating untrusted data ("filth") from the system software ("food") and making sure to clean up those parts of the system that come into contact with the filth.

    Can Windows do this? I don't know. The SP2 firewall settings are an improvement. However, it is still a system with terrible hygiene, since user software which handles filth routinely runs with administrator privileges that have access to the food supply. Ick.

  45. Did anyone think it wouldn't help? by Chris_Jefferson · · Score: 1

    I've actually read the article, and wonder if some people are taking a little too seriously...

    While it is a well written and interesting discussion of reverse enginnering a virus, the writers admit they hadn't really done any reverse enginnering before this project at all. Also, how exactly did everything think that Anti-virus writers have been tracking what viruses do and how to kill them? Any major virus is of course disassembled by the antivirus writers so they can decide how to remove it, espically now many viruses are polymorphic.

    On the other hand, getting hold of those reverse enginnerings is obvious quite hard, as there is no good reason to give them out. Perhaps this suggests there should be more openness?

    --
    Combination - fun iPhone puzzling
  46. Linux has a few million users. by khasim · · Score: 3, Interesting

    Even by the most conservative count, Linux has a few million users. That's more than enough to support a virus population.

    Even the old MS-DOS machines had a viable virus population, although the viruses, for the most part, had to be hand transported via floppies to each machine.

    With network enabled machines, it should be even easier to spread viruses. And it is. Just look at all of the Windows viruses, worms and trojans that are out there.

    If Linux was as un-secure as Windows, a simple link on /. would be enough to start a major Linux virus.

  47. Now figure out how to break out of Microsoft VM by Animats · · Score: 1
    What this tells virus authors is that their viruses should not only detect that they're running in a virtual machine, but escape from it and take over the real machine.

    Microsoft VM has to do all the wierd code-changing that VMware did, because the x86 can't be completely virtualized. And it has to emulate the I/O devices. There are probably bugs in the VM that can be exploited, most likely in the I/O area. Try wierd DMA operations, and poke around in device address space, until the real machine crashes. Then you know where to look for a vulnerability.

  48. Patent it! by Anonymous Coward · · Score: 0

    Someone should put in a software patent application fo "Malicious software that spread itself over computer networks to steal and/or destroy information." After that we'll just sue the virus coders!

  49. Because most virii are already freely available... by ionrock · · Score: 1, Interesting

    I am not really sure the need to reverse engineer virii because most are released to public already. Talented virus writers seldom release their work into the wild but rather simply create them to reveal weaknesses in software. It is then a "script kiddie" who takes the code and releases into the wild. As we all know this is often an effort to simply look cool. This being the case it might be more practical to just pay attention to security sites than to mess with virii that have already screwed people over. The paper does look interesting though.

  50. Virus Patent Business! by maxwell+demon · · Score: 1
    Sure they are. See, a "virus" is a program, and the source code is copyrightable, and patentable as well.

    Maybe I should try to find new ways for viruses to spread, hide themselves, etc., but not write a virus, but patent them. I'm sure a virus writer will not check any patents, and then if some new virus is spread and the one who has written it is caught, I'll sue him for royalties.

    Thinking about it: Given that it's obviously possible to sue someone for just running patent-protected software (think GIF!), maybe I could even sue everyone infected with the virus, at least if the virus needs user interaction (like, clicking on some attachment) to spread?

    Hmmm ... I think I should patent this as business method! :-)
    --
    The Tao of math: The numbers you can count are not the real numbers.
    1. Re:Virus Patent Business! by Tenebrious1 · · Score: 1

      Maybe I should try to find new ways for viruses to spread, hide themselves, etc., but not write a virus, but patent them. I'm sure a virus writer will not check any patents, and then if some new virus is spread and the one who has written it is caught, I'll sue him for royalties.

      You'd have to be quick though; find a bug in a MS product, write an exploit and patent it quickly. If you wait too long the virus and previous incarnations will all be prior art.

      Not that the overworked and underclued USPTO *wouldn't* grant you a patent regardless...

      --
      -- If god wanted me to have a sig, he'd have given me a sense of humor.
  51. Don't they do this? by Monf · · Score: 1
    Don't the av firms do this already?? If they put up a bulletin that describes every detail as to how the worm works, isn't that the first half of reverse engineering? The second half is to find a programmer and tell he/she/it that you want a process that does exactly what the worm that is so thoroughly documented does.

    We can all go to the av sites and get the full rundown on a virus or worms methods of propogation and replication, plus the payload it carries and just write something that does exactly that...

    Preferably in Forth....

    --
    Pay no attention to that man behind the curtain.
  52. Yep, useless... by c0p0n · · Score: 1

    ... you only have to put an EULA on your virus to make AV enterprises go illegal by doing reverse engineering.

    --

    Your head a splode
  53. Lack of competences? by Knx · · Score: 2, Insightful

    I think one reason why RCE is not done as fast as it potentially could might be that there are just fewer and fewer programmers out there who are able to quickly read, analyse and understand assembly code. Because they're simply not familiar enough with it.

    One obvious but irrefutable idea which arises from this article is that while we're almost all writing in hi-level languages nowadays, the final code is still in assembly. (Ok, that's not quite true for Java and the like, but let's focus on decent fully-compiled languages! ;-p /trolling) So, yes: RCE is usually done from assembly code.

    Now, how many IT schools are still providing decent assembly courses? The fact is, we don't need to understand assembly nowadays to become a programmer. Most of my co-workers just have no idea what assembly is, or even how a binary number looks like. Incidentally, it does sometimes show up in the way they're writing code in hi-level languages. For instance, they would write "x/4" when I would write "x>>2". But then again, who cares? Today's compilers should optimize that by themself, anyway. Ok, enough digression.

    My point is that an efficient RCE requires very specific competences, including but not limited to a very good knowledge in assembly and some months -- or, better, years -- of practice. This last point is important. Assembly coding being wild by nature, I believe it requires much more practice to be able to detect common structures, common tricks, etc. If you've just learned a trick without using it, chances are that you will just miss it in a foreign piece of code. (A "trick" being produced by either a hardcore pirate still directly writing in asm or the compiler used by some script-kiddie.)

    And finally, one reason why many white-hats among the virus-fighting-gang actually are former black-hats might be that not enough IT schools are providing a formation which is sucessfully matching the above criteria.

    --
    The problem with Slashdot memes is that YOU INSENSITIVE CLOD!
    1. Re:Lack of competences? by Anonymous Coward · · Score: 0

      Dumbass, compilers can optimize divide by powers of two to shifts.

    2. Re:Lack of competences? by Anonymous Coward · · Score: 0
      Dumbass, compilers can optimize divide by powers of two to shifts.
      Dumbass, the original poster already mentioned that.
    3. Re:Lack of competences? by Sigma+7 · · Score: 1
      I think one reason why RCE is not done as fast as it potentially could might be that there are just fewer and fewer programmers out there who are able to quickly read, analyse and understand assembly code. Because they're simply not familiar enough with it.
      The problem isn't that there are fewer and fewer programmers - it has to do with the fact that it's hard to interpret it in the first place.

      For example, IBM PCs running Dos will access operating system calls by calling an Interrupt. Unless you have a reference book, you will not know that Interrupt 21H Function 36H (AH=36H) will get the amount of free disk space on a drive specified by DL. The same applies to the other operating systems, which may or may not be more complex.

      For instance, they would write "x/4" when I would write "x>>2". But then again, who cares? Today's compilers should optimize that by themself, anyway.

      I've tried my hand at reverse-engineering an application. The compiler optimizations generally make things much harder to reverse, because the assembly language does not necessairly look like similar instructions written in C or some other language. It's still possible to examine, but causes a slow down even if you know what you are doing.

  54. Re:Because most virii are already freely available by walt-sjc · · Score: 2, Interesting

    If you REALLY RTFA, this is about malware / viruses (there is no such word as virii) that require human intervention - the nasty stuff that idiots click on due to simplistic social engineering. This is not about malware that (for example) go in via the RPC hole or other vulnerability.

    The POINT is that copycat versions may be caught by looking at how the original works and what it does in general rather than some kind of binary pattern match like the current generation of AV does.

    Many of the AV vendors claim that they have code that can detect mutated versions of malware, but in practice they never do.

  55. How about the DMCA ? by JPS · · Score: 1

    Just curious, why can't a virus be protected by the American DMCA if it has obfuscating techniques making it difficult to understand how it works ? Reverse engineering and publishing the results seems to enable the bypass of the virus protection.

    So OK, a virus is "BAAAAD", while a DRM system, is ... well... "legitimate(?)", but apart from this, is there any legal ground to allow virus reverse-engineering ?

    1. Re:How about the DMCA ? by pclminion · · Score: 1
      As a comparison, here in Oregon it is illegal to wear body armor while committing another crime. It is legal to possess body armor as long as you do not use it for an illegal purpose.

      I would expect a similar application of common sense in this case. The DMCA was conceived (perhaps ill-conceived, but that isn't the point) to protect copyright holders. It was definitely not intended to allow criminals to protect their own illegal behaviors. I really doubt the DMCA would apply in this case.

      And that's not even to mention the obvious: why would a virus writer step forward and admit to computer crimes? It's like calling the cops to report that someone has stolen 2 kilos of heroin from your apartment.

    2. Re:How about the DMCA ? by SmurfButcher+Bob · · Score: 1

      Ah - but if the writer does get caught, they'll be set for life once they got out of jail. Adobe and California have already asserted that "breaking" ROT13 is a criminal offense... imagine the field day some scumbag lawyer would have with those who "hacked into" and "reversed" some jerk's obfuscated trojan.

      A good trojan that contained an embedded EULA, a trade-secret and a copyright notice would be funny as hell IMO... and I've not seen any exceptions in the DMCA where certain "IP Rights" are waived if the "IP" is evil. Besides - if there were such exceptions, there'd be noone who'd have paid for Windows in the past decade. :)

      --

      help me i've cloned myself and can't remember which one I am

  56. I can see some value in this. by Dark$ide · · Score: 1
    I've RTFA, one thing that was useful from that is that they found the backdoor in that old virus.

    Open a port to the infected machine and you can control the virus before it cripples your network. If the Symantec's and McAfee's are reverse engineering the viruses they could quickly publish a "shoot_the_sucker_dead.exe" that would open the back door and cripple the luser's machine or simply run the delete and die code that's already in the virus.

    Well realistically they won't do that because it spoils their business model. They need the new variants so that they can preach "16,000+ viruses detected by Foobar AntiVirus v17.6". If we could shoot the crap dead quickly we wouldn't need Foobar AntiVirus v17.6 or have to buy the new super Foobar AV V18.2 for 2005.

    Currently the worst part of viruses, for me, is the hundreds of copies of the damned things that arrive in my inbox, because some luser clicked on a bogus, dumb attachment in a note from someone they don't know with misspelt text and a crap subject line.

    --

    Sigs. We don't need no steenking sigs.

  57. Obligatory Monty Python quote by pmiller396 · · Score: 1

    "Dennis, there's some nice filth over here!"

    Which actually does have some real-life parallels to the Internet, if you think about it :)

  58. If you're interested in reverse compilers.. by Sir+Pallas · · Score: 1

    ..Christina Cifuentes (and her thesis) is who you want to talk to.

    1. Re:If you're interested in reverse compilers.. by Anonymous Coward · · Score: 0

      Actually... she hasn't done anything in
      this area since the late 1980s. So don't
      bother talking to her. Instead, talk
      to GrammarTech and University of Wisconsin,
      and New Mexico Tech.

  59. They'll be back by flumps · · Score: 1

    Nah, all we need to do is to deploy skynet.

    Y

    Ohh crap...!

    --
    "So there he is, risen from the dead. Like that fella, E. T." - Father Ted Crilly
  60. illegal! by Anonymous Coward · · Score: 0

    I thought reverse engineering was illegal in the USA...

  61. It took them 10 weeks to compile this information by flowerp · · Score: 1

    Antivirus vendors usually need 48 hours to dissect a virus and describe most of its internal workings. So, what's the point one might ask.

    Well, this document is a complete primer on how to disassemble an unknown (smallish) program in a sandboxed environment. Anyone who ever wanted to learn this skill should give it a shot. Who knows, you might end up working for an antivirus company soon ;)

    For Lucent however, this was a complete waste of 10 weeks of engineering skill of three people minus the publicity effect of this stunt.

    --
    --- Eat my sig.
  62. Is This a Violation of the DMCA? by Cruxus · · Score: 1

    For years, we've been told this or that is a violation of the Digital Millennium Copyright Act. Now the mainstream is trying to use techniques supposedly forbidden under the DMCA against propogators of malicious code. Do I smell hypocrisy?

    --
    On vit, on code et puis on meurt.
  63. against the dcma by Anonymous Coward · · Score: 0

    would it not be against the dcma to reverse engineer a worm :-)

    1. Re:against the dcma by CaptainTux · · Score: 1

      I could be wrong but, if I remember correctly, expressly illegal things aren't protected by law. For example, if I get cocaine from you on credit (or even steal it from you) I don't think you can actually sue me for theft. I believe the same is true of a virus.

      --
      Anthony Papillion
      Advanced Data Concepts, Inc.
      "Quality Custom Software and IT Services"
  64. Help is at hand, perhaps... by Tandoori+Haggis · · Score: 1

    http://www.petsplaytime.co.uk/products/bob-martin- wormers.html
    http://www.ciao.co.uk/Member_Advice_ on_Worming__Re view_5366862
    http://www.ciao.co.uk/Member_Advice_ on_Worming__Re view_5043243
    http://my.webmd.com/search/search_re sults?query=wo rms&filter=mywebmd_all_filter

    When you start dreaming about work, its just as well to find distractions....

    --
    My hyperlinks aren't worth the paper they're printed on.
  65. Why reverse engineer when you can get the source? by Ash-Fox · · Score: 1

    Don't they these days have the sourcecode compressed in the executable?

    I recall hearing somethig about this, that was used in some of the most popular viruses to make it harder to find the author of the virus.

    --
    Change is certain; progress is not obligatory.
  66. no source = no security by Anonymous Coward · · Score: 0

    I'm not sure but it can help to find security issues and/or backdoors, very usefull! If you look at MS you will find only security by obscurity. my 0.02 cent

  67. Kinda OT by AaronBenage · · Score: 1

    Do virus writers retain the copyrights to their code? If so, is reverse engineering a virus legal? Has anyone seen a virus with a license agreement?

    --
    "Those who would give up Essential Liberty to purchase a little Temporary Safety, deserve neither Liberty nor Safety." -
  68. reverse engineering isn't a timely solution by nazarijo · · Score: 1
    reverse engineering for worm defense isn't timely. look at how long it took them and look at how it was stopped in the meantime. as an example, the body doesn't dissect germs to generate antibodies, it simply finds an antigen and uses that. you basically do the same, either a network footprint (ie "spreads using direct to MX methods") or some static simple signature, like a filename or a piece of the header that's constant.

    these thoughts and more on my post on wormblog on the subject.

  69. In other news... by Anonymous Coward · · Score: 0

    Caterpillars aren't worms.

  70. Agree completely by Lifewish · · Score: 1

    As part of the younger generation, I can definitively state that it is a right royal pain in the arse to get any decent understanding of how a system works. I'm attempting to deal with this by learning assembly language and running linux, but finding the relevant information is at least as time consuming as actually learning it.

    --
    For the love of God, please learn to spell "ridiculous"!!!
  71. Bug in the text... by steve_stern · · Score: 1
    To quote the article:

    An increasingly important use for asymmetric encryption is digital signing. A digital signature is the reverse of public key encryption. Just like an ordinary signature it is used to prove the identity of the sender of a message. This can happen in several ways. The simplest is to send a random message as both plaintext and ciphertext. The recipient deciphers the ciphertext version using the published public key and if the two versions match it proves the sender was in possession of the private key.


    Basically, they're saying:
    I pick a random m, then compute:
    c = m^d (mod n)
    I give you (c,m) and you verify that c^e=m (mod n)
    Their claim is that this proves that I know the private key, d

    But, I say:
    Pick random c, compute:
    m = c^e (mod n)
    I give you (c,m), you verify that c^e=m (mod n), and you belive I know the private key, d, which I clearly do not.
  72. Uh.... DMCA? by dosboss · · Score: 1

    Can reverse engineering a virus lead to better ways of detecting, preventing, and recovering from a virus and its future variants?

    Or more importantly, can reverse engineering a computer virus get you in trouble with the DMCA? Could the virus writer then turn around and sue you? Seems like a plausable scenario and a valid income stream to me, if an extremely unethical and twisted one... Imagine the corporate virus-writing teams hired to take down a smaller rival, and the other guy not being able to counter for fear of being sued.