Close
  • Latest News
  • Artificial Intelligence
  • Video
  • Big Data and Analytics
  • Cloud
  • Networking
  • Cybersecurity
  • Applications
  • IT Management
  • Storage
  • Sponsored
  • Mobile
  • Small Business
  • Development
  • Database
  • Servers
  • Android
  • Apple
  • Innovation
  • Blogs
  • PC Hardware
  • Reviews
  • Search Engines
  • Virtualization
Read Down
Sign in
Close
Welcome!Log into your account
Forgot your password?
Read Down
Password recovery
Recover your password
Close
Search
Logo
Logo
  • Latest News
  • Artificial Intelligence
  • Video
  • Big Data and Analytics
  • Cloud
  • Networking
  • Cybersecurity
  • Applications
  • IT Management
  • Storage
  • Sponsored
  • Mobile
  • Small Business
  • Development
  • Database
  • Servers
  • Android
  • Apple
  • Innovation
  • Blogs
  • PC Hardware
  • Reviews
  • Search Engines
  • Virtualization
More
    Home Cybersecurity
    • Cybersecurity

    Better Hope That the ANI Attacks Pass over Your Computer

    Written by

    Larry Seltzer
    Published March 31, 2007
    Share
    Facebook
    Twitter
    Linkedin

      eWEEK content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

      There are many reasons to be disappointed in Microsoft over the .ANI vulnerability that is the talk of the security community the last few days. The analysis of the bug and its history speak badly of Microsoft’s efforts in many ways: The company’s patching practices came up short, its security protection technologies came up short, and its code analysis was shoddy. There are many reasons why this should never have happened, and now we should all be upset about it.

      Before we go any further, please note that on Tuesday, April 3, Microsoft is releasing an “out of cycle” patch for this bug. It will certainly be available through all the usual channels: Windows Update, Microsoft Update, SUS, Download Center, etc. APPLY IT AS SOON AS POSSIBLE. If you’re concerned about side effects, bear in mind that we’re talking about animated cursors here: Who cares if the break?

      The most glaring problem is the fact that Microsoft was informed of this vulnerability on Dec. 20, 2006, by Determina. It’s April now and Microsoft released no updates last month. It’s possible that the company is planning to wait for the April patch day (April 10), but my guess is that a patch will be coming out “out of cycle” the way they did for the WMF bug.

      Researchers release a workaround for the zero-day Windows animated cursor vulnerability. Click here to read more.

      What can possibly take this long? Almost within hours, eEye had a mitigation patch out that prevents cursors from loading anywhere except %SYSTEMROOT%. This is, of course, far from perfect, but it’s an effective mitigation. Why didn’t Microsoft have something like this available?

      It’s reasonable for Microsoft to take time testing security updates to make sure they don’t cause problems. This is a trade-off, and the fact that sometimes there are problems anyway proves that there’s always a reason to do more testing. But when Microsoft takes several months like this to fix a really serious bug, it runs a serious risk. It should at least have some less-than-perfect option available for users, like eEye’s patch.

      If you didn’t want to apply a third-party patch, and of course Microsoft tells you that it can’t endorse such things, there are steps you can take to mitigate it. In this case the steps are unsatisfying and, in some cases, confusing. When Microsoft tells you, “As a best practice, users should always exercise extreme caution when opening or viewing unsolicited e-mails and e-mail attachments from both known and unknown sources,” what are we to make of this? You can’t always know an e-mail was unsolicited until you read it. Should we stop reading e-mail until there is a patch?

      All of this points to the need for Microsoft to re-evaluate its update prioritization. One of the things about testing is that you can generally speed it up with more resources. Maybe Microsoft needs to throw more resources at update testing. Heaven knows, the company can afford it.

      The second great failing at Microsoft goes back over two years to the MS05-002 patch for the frighteningly similar “Vulnerability in Cursor and Icon Format Handling Could Allow Remote Code Execution.” It’s similar because it’s essentially the same bug. This bug was reported by eEye Nov. 15, 2004, and patched (pretty quick for Microsoft) on Jan. 11, 2005.

      Read the Determina advisory on the new bug for gory technical detail, but in retrospect Microsoft should have found the new bug once it learned about the old bug. Basically it fixed the flaw where the ANI file had an “anih” block with an overflow, but not in the case where there were two anih blocks with an overflow on the second.

      The only thing I can say in fairness to Microsoft is that eEye seems to have missed this “second anih block” problem in its analysis too, but Microsoft has the source code and eEye doesn’t. It seems reasonable that when a major, naive bug is found in a section of code (and the MS05-002 bug was a classic stack overflow, one that should never have survived a security audit), you take the time to scrutinize the rest of the code in the same program. If Microsoft had done that, there’s at least a good chance it would have found this new problem. (And if it did do an analysis and didn’t find the problem, well perhaps that’s even worse.)

      Next page: The third failure.

      The third failure is in stack protection. I’m sure I wasn’t the only one who was confused to hear that this was a stack overflow and that it affected Windows XP SP2 and Windows Vista. Weren’t those operating systems compiled with the /GS switch, which adds stack protection code in order to prevent overflows like this?

      Well, sort of. Yes, they were compiled with /GS, but it turns out that /GS doesn’t do all that you might have thought it did. Thanks again to the Determina advisory for explaining that /GS only adds stack protection code when a function uses certain types of arrays, on the assumption that buffer overflows derive from out-of-bounds array access. Since the ANI handling code uses a C struct rather than an array, no protection is provided.

      The Microsoft docs for the /GS switch describe it this way: “The compiler injects checks in functions with local string buffers or, on x86, functions with exception handling. A string buffer is defined as an array whose element size is one or two bytes, and where the size of the whole array is at least five bytes, or, any buffer allocated with _alloca.” They don’t try to hide it: “/GS does not protect against all buffer overrun security attacks. “

      A widespread malicious attack is posing as an invitation from Microsoft to download a beta version of Internet Explorer 7.0. Click here to read more.

      Once again, obviously an engineering trade-off decision was made. Perhaps Microsoft was concerned that putting in stack checking literally everywhere would fatten the program up beyond what was acceptable. Its compiler, its source code, it could do the testing to see. This is the case where the decision works badly for Microsoft. It seems to me that maybe there’s a need for a /GSP (for “Paranoid”) switch that puts in the stack check even if there doesn’t seem to be a need, unless there’s a good reason not to (there are cases, described by Microsoft, where the stack check code wouldn’t be reliable).

      I don’t often get this mad at a vendor. I’m usually more inclined to feel sorry for them for all the grief they’ll take when they screw up, but Microsoft deserves massive grief from this. Like the WMF bug, this is likely to be an endemic attack for years to come, lurking around the background of the Internet, and it needn’t have happened.

      Security Center Editor Larry Seltzer has worked in and written about the computer industry since 1983.

      Check out eWEEK.com’s Security Center for the latest security news, reviews and analysis. And for insights on security coverage around the Web, take a look at eWEEK.com Security Center Editor Larry Seltzer’s Weblog.

      More from Larry Seltzer

      Larry Seltzer
      Larry Seltzer
      Larry Seltzer has been writing software for and English about computers ever since—,much to his own amazement— He was one of the authors of NPL and NPL-R, fourth-generation languages for microcomputers by the now-defunct DeskTop Software Corporation. (Larry is sad to find absolutely no hits on any of these +products on Google.) His work at Desktop Software included programming the UCSD p-System, a virtual machine-based operating system with portable binaries that pre-dated Java by more than 10 years.For several years, he wrote corporate software for Mathematica Policy Research (they're still in business!) and Chase Econometrics (not so lucky) before being forcibly thrown into the consulting market. He bummed around the Philadelphia consulting and contract-programming scenes for a year or two before taking a job at NSTL (National Software Testing Labs) developing product tests and managing contract testing for the computer industry, governments and publication.In 1991 Larry moved to Massachusetts to become Technical Director of PC Week Labs (now eWeek Labs). He moved within Ziff Davis to New York in 1994 to run testing at Windows Sources. In 1995, he became Technical Director for Internet product testing at PC Magazine and stayed there till 1998.Since then, he has been writing for numerous other publications, including Fortune Small Business, Windows 2000 Magazine (now Windows and .NET Magazine), ZDNet and Sam Whitmore's Media Survey.

      Get the Free Newsletter!

      Subscribe to Daily Tech Insider for top news, trends & analysis

      Get the Free Newsletter!

      Subscribe to Daily Tech Insider for top news, trends & analysis

      MOST POPULAR ARTICLES

      Artificial Intelligence

      9 Best AI 3D Generators You Need...

      Sam Rinko - June 25, 2024 0
      AI 3D Generators are powerful tools for many different industries. Discover the best AI 3D Generators, and learn which is best for your specific use case.
      Read more
      Cloud

      RingCentral Expands Its Collaboration Platform

      Zeus Kerravala - November 22, 2023 0
      RingCentral adds AI-enabled contact center and hybrid event products to its suite of collaboration services.
      Read more
      Artificial Intelligence

      8 Best AI Data Analytics Software &...

      Aminu Abdullahi - January 18, 2024 0
      Learn the top AI data analytics software to use. Compare AI data analytics solutions & features to make the best choice for your business.
      Read more
      Latest News

      Zeus Kerravala on Networking: Multicloud, 5G, and...

      James Maguire - December 16, 2022 0
      I spoke with Zeus Kerravala, industry analyst at ZK Research, about the rapid changes in enterprise networking, as tech advances and digital transformation prompt...
      Read more
      Video

      Datadog President Amit Agarwal on Trends in...

      James Maguire - November 11, 2022 0
      I spoke with Amit Agarwal, President of Datadog, about infrastructure observability, from current trends to key challenges to the future of this rapidly growing...
      Read more
      Logo

      eWeek has the latest technology news and analysis, buying guides, and product reviews for IT professionals and technology buyers. The site’s focus is on innovative solutions and covering in-depth technical content. eWeek stays on the cutting edge of technology news and IT trends through interviews and expert analysis. Gain insight from top innovators and thought leaders in the fields of IT, business, enterprise software, startups, and more.

      Facebook
      Linkedin
      RSS
      Twitter
      Youtube

      Advertisers

      Advertise with TechnologyAdvice on eWeek and our other IT-focused platforms.

      Advertise with Us

      Menu

      • About eWeek
      • Subscribe to our Newsletter
      • Latest News

      Our Brands

      • Privacy Policy
      • Terms
      • About
      • Contact
      • Advertise
      • Sitemap
      • California – Do Not Sell My Information

      Property of TechnologyAdvice.
      © 2024 TechnologyAdvice. All Rights Reserved

      Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.

      ×