Linux Today: Linux News On Internet Time.
Search Linux Today
search.internet.com
Linux News Sections:  Blog -  Developer -  High Performance -  Infrastructure -  IT Management -  Security -  Storage -
Linux Today Navigation
LT Home
Preferences
Contribute
Link to Us
Search
Linux Jobs

Become a Marketplace Partner

internet.commerce
Be a Commerce Partner














The Linux Channel at internet.com
Linux Today
Enterprise Linux Today
Apache Today
JustLinux.com
Linux Planet
PHPBuilder
All Linux Devices
Technology Jobs

JustTechJobs.com

LinuxToday Newsletters
Subscribe News
Subscribe PR
Subscribe Security

internet.com
IT
Developer
Internet News
Small Business
Personal Technology
International

Search internet.com
Advertise
Corporate Info
Newsletters
Tech Jobs
E-mail Offers

 






Current Newswire:

Analyzing TCP Disconnects On Linux Or Unix

Linux Evolution Reveals Origins of Curious Mathematical Phenomenon

A Microsoft Veteran Embraces Open Source

Using Spawner To Populate SQL Database

WiMAX Deal "Clears" Linux for Takeoff

Nitrogen: A Background Setter For Lightweight Desktop Manager

Technology, Innovation and the Challenge of the Missing Standards

Red Hat Chief: 'Cheaper Generally Wins'

How Comcast Controls Sony's Internet TV Plans

Growth in Internet Crime Calls for Growth in Punishment




Unix/Red Hat Systems Adminsitrator
The Computer Merchant, Ltd
US-PA-Lansdale

Justtechjobs.com Post A Job | Post A Resume
:Debian Investigation Report After Server Compromises
Debian Investigation Report After Server Compromises
Dec 2, 2003, 16 :00 UTC (20 Talkback[s]) (21987 reads)

(Other stories by Martin Schulze)

The Debian administration team and security experts are finally able to pinpoint the method used to break-in into four project machines. However, the person who did this has not yet been uncovered.

The package archives were not altered by the intruder.

The Debian administration and security teams have checked these archives (security, us, non-us) quite early on in the investigation and re-installation process. That's why the project was able to open up the security archive again and confirm that the stable update (3.0r2) wasn't compromised.

If the project had anticipated to get compromised at the same time the stable update was implemented, the involved people would have postponed it. However, the updated packages were already installed in the stable archive and mirror servers at the time the break-ins were discovered, so it wasn't possible to hold it back anymore.

Several methods based on different control data were used to verify the packages and to ensure that the archives weren't altered by the attacker:

  • externally stored lists of MD5 sums accumulated over the past weeks on not compromised machines
  • digitally signed .changes files from external debian-devel-changes archives on not compromised machines
  • digitally signed .changes files on the respective archive servers
  • externally stored mirror log files

Timeline

Below is the timeline of discovery and recovery of the compromised machines. All times are in UTC. Some times are only estimates since our conversation did not contain exact timestamps.

Sep 28 01:33 Linus Torvalds releases 2.6.0-test6 with do_brk() fix
Oct 02 05:18 Marcello Tosatti applies do_brk() boundary check
Nov 19 17:00 Attacker logs into klecker with sniffed password
Nov 19 17:08 Root-kit installed on klecker
Nov 19 17:20 Attacker logs into master with same sniffed password
Nov 19 17:47 Root-kit installed on master
Nov 19 18:30 Attacker logs into murphy with service account from master
Nov 19 18:35 Root-kit installed on murphy
Nov 19 19:25 Oopses on murphy start
Nov 20 05:38 Oopses on master start
Nov 20 20:00 Discovery of Oopses on master and murphy
Nov 20 20:54 Root-kit installed on gluck
Nov 20 22:00 Confirmation that debian.org was compromised
Nov 21 00:00 Deactivation of all accounts
Nov 21 00:34 Shut down security.debian.org
Nov 21 04:00 Shut down gluck (www, cvs, people, ddtp)
Nov 21 08:30 Point www.debian.org to www.de.debian.org
Nov 21 10:45 Public announcement
Nov 21 16:47 Developer information updated
Nov 21 17:10 Shut down murphy (lists)
Nov 22 02:41 security.debian.org is back online
Nov 25 07:40 lists.debian.org is back online
Nov 28 22:39 Linux 2.4.23 released

Discovery

On the evening (GMT) of Thursday, November 20th, the admin team noticed several kernel oopses on master. Since that system was running without problems for a long time, the system was about to be taken into maintenance for deeper investigation of potential hardware problems. However, at the same time, a second machine, murphy, was experiencing exactly the same problems, which made the admins suspicious.

Also, klecker, murphy and gluck have "Advanced Intrusion Detection Environment" (package aide) installed to monitor filesystem changes and at around the same time it started warning that /sbin/init had been replaced and that the mtime and ctime values for /usr/lib/locale/en_US had changed.

Further investigation revealed the cause for both these problems to be the SucKIT root-kit. It includes password sniffing and detection evasion capabilities (i.e. tools to hide processes and files) which are installed directly into the kernel, which in turn caused the oopses that were noticed.

Detailed Attack Analysis

On Wednesday, November 19th, at approximately 5pm GMT, a sniffed password was used to log into an unprivileged developer account on the host klecker (.debian.org). The attacker then retrieved the source code through HTTP for an (at that time) unknown local kernel exploit and gained root permissions via this exploit. Afterwards, the SucKIT root-kit was installed.

The same account and password data were then used to log into the machine master, to gain root permissions with the same exploit and also to install the SucKIT root-kit.

The attacker then tried to get access to the host murphy with the same account. This failed because murphy is a restricted machine and its only purpose is to act as list server to which only a small subset of developers can log into. Since the initial login attempt didn't work the person used his root access on master to access an administrative account which was used for backup purposes and gained access to murphy as well. The SucKIT root-kit was installed on this host as well.

On the next day the attacker used a password sniffed on master to log into gluck, get root there and also install the SucKIT root-kit.

The forensic analysis revealed exact dates and times when the program /sbin/init was overwritten and the root-kit installed. The analysts also discovered the executable file which was used to gain root access on the machines, which was protected and obfuscated with Burneye. Upon unwrapping and disassembling the exploit, security experts discovered which kernel bug was utilised.

An integer overflow in the brk system call was exploited to overwrite kernel memory (change page protection bits). By doing so the attacker gained full control about the kernel memory space and was able to alter any value in memory.

Even though this kernel bug was discovered in September by Andrew Morton and already fixed in recent pre-release kernels since October, its security implication wasn't considered that severe. Hence, no security advisories were issued by any vendor. However, after it was discovered to be used as a local root exploit the Common Vulnerabilities and Exposures project has assigned CAN-2003-0961 to this problem. It is fixed in Linux 2.4.23 which was released last weekend and in the Debian advisory DSA 403.

Linux 2.2.x is not vulnerable to this exploit because boundary checking is done before. It is also believed that Sparc and PA-RISC kernels are not vulnerable since user and kernel addresses are stored in different address spaces on these architectures.

Please understand that we cannot give away the used exploit to random people who we don't know. So please don't ask us about it.

Recovery

After the machines were shut down, images of the compromised hard disks were created and stored on a separate machine. They were distributed to the people doing the forensic analysis. The three machines in the US (master, murphy, gluck) were reinstalled afterwards and their services re-instated one by one after investigation by the relevant service admin.

On klecker, however, this was postponed for a scheduled maintenance so the security archive could be brought online again sooner than the other services. At that time we also didn't have console access to klecker, so recovery had to be done remotely. After a disk-image was made via serial console login to a local machine on a firewalled network connection, the root-kit was removed, the kernel exchanged and hardened, binaries double-checked and the security archive verified against several different external sources. This machine will be re-installed in the next few weeks.

As a security precaution all developer accounts were disabled in LDAP and SSH keys removed on the more important machines, so that no more machines could be compromised. This, however, effectively disabled just about any public Debian work that involved uploading files and accessing the CVS repositories.

All passwords used on quantz (i.e. all Alioth, arch and subversion passwords) have been invalidated as well. All SSH authorized keys have been removed as well. Please use the lost password system to receive a new password at:

https://alioth.debian.org/account/lostpw.php

When all services are running again and the machines are sufficiently secured, LDAP will be reset so that developers can create a new password again (<http://db.debian.org/password.html>). It can't currently be predicted when this will happen, though.

Upon recovery SSH was re-installed on the compromised machines. Hence, there are new RSA host keys and key fingerprints for these hosts. The keys will be included in LDAP as soon as they are created and can be taken from <http://db.debian.org/machines.cgi>.

Consequences

!! Renew your passwords! !!

Since passwords were sniffed on the compromised hosts, any outgoing connection that involved a password is to be considered compromised as well, i.e. the password should be considered known to the attacker. It should therefore be changed immediately.

Additionally, if somebody had access to a Debian machine and was using the same password or passphrase on other machines or keys we strongly advise to change the password or passphrase respectively as soon as possible.

If an SSH key was generated or stored on one of these machines and was used to log into other machines (i.e. by installing it in .ssh/authorized_keys), it should be removed as well.

The secret GnuPG/PGP keys which were found on debian.org machines were also removed from the Debian keyrings and thus deactivated.

Developers who are worried about their own machines should at least run chkrootkit and watch its output. Matt Taggert maintains a backport of the current version for woody at the following address:

deb http://lackof.org/taggart/debian woody/chkrootkit main
deb-src http://lackof.org/taggart/debian woody/chkrootkit main

Additionally, a detailed list of precaution issues is provided by Wichert Akkerman and Matt Taggart at:

http://www.wiggy.net/debian/developer-securing/

SucKIT Root-Kit

SucKIT is a root-kit presented in Phrack issue 58, article 0x07 ("Linux on-the-fly kernel patching without LKM", by sd & devik). This is a fully working root-kit that is loaded through /dev/kmem, i.e. it does not need a kernel with support for loadable kernel modules. It provides a password protected remote access connect-back shell initiated by a spoofed packet (bypassing most firewall configurations), and can hide processes, files and connections.

Usually, SucKIT is launched as /sbin/init at system bootup, forks to install itself into the kernel, start up a backdoor, and launches a copy of the original "init" binary from the parent (with pid 1). Any subsequent executions of /sbin/init are redirected to the original init.

TESO's Burneye Protection

Burneye is a means of obfuscating ELF binaries on the UNIX platform presented in Phrack issue 58, article 0x05 ("Armouring the ELF: Binary encryption on the UNIX platform", by grugq & scut). Using tools like TESO's Burneye, an attacker can alter an executable program to encrypt its true purpose, hiding it from firewall filters, intrusion detection systems, anti-virus software and the prying eyes of investigators.

Thanks

  • James Troup and Ryan Murray for their general work on all hosts
  • Adam Heath and Brian Wolfe for their work on master and murphy
  • Wichert Akkerman for his work on klecker
  • Dann Frazier and Matt Taggart for their work on gluck
  • Michael Stone and Robert van der Meulen for their forensics work
  • Marcus Meissner for disassembling the used exploit
  • Jaakko Niemi for his work on checking and re-enabling lists.debian.org
  • Colin Watson for his work on checking and re-enabling bugs.debian.org
  • Josip Rodin for his work on checking and re-enabling the lists web archives

Related Stories:
Debian GNU/Linux Advisory: kernel-image(Dec 02, 2003)
eWeek: Researchers Find Serious Vulnerability in Linux Kernel(Dec 02, 2003)
Debian Project Reports Some Servers Compromised(Nov 21, 2003)


Index Mode   |   Flat Mode   |   Thread Mode   |   Thread Flat  
  Talkback(s) Name  and Date
 Can anyone tells some quick tricks to d ...   More info please...   
Shamar
Dec 2, 2003, 16:49:38
 
It all sounds greek to me...but it sure  ...   Language   
rokus
Dec 2, 2003, 16:55:53
 
Ok, is someone going to put out a descri ...   Ok, how to defend against it?   
Robert
Dec 2, 2003, 17:15:16
 
The article does not state how the first ...   First sniffed password   
Aaron
Dec 2, 2003, 18:35:13
 
How can an encrypted executable still ru ...   Encrypted binaries?   
Tony OBryan
Dec 2, 2003, 19:30:37
 
It&#39;s very simple how they did it but ...   Know How!   
Inverter
Dec 2, 2003, 19:58:31
 
Because I am abandoning redhat I recentl ...   critique of debian and its philosophy   
a
Dec 2, 2003, 20:21:49
 
Regarding debian using an older kernel.  ...   Re: critique of debian and its philosophy   
anon
Dec 2, 2003, 21:31:41
 
good for debian to give a detailed expla ...   Kudos to discussion of breach   
sdfsdf
Dec 2, 2003, 21:42:18
 
> Ok, is someone going to put out a desc ...   Re: Ok, how to defend against it?   
Daniel
Dec 2, 2003, 21:55:34
 
> As this attack shows if they had upgra ...   Re: critique of debian and its philosophy   
Daniel
Dec 2, 2003, 22:08:05
 
I second that.Denes (Debian user)  ...   Re: Kudos to discussion of breach   
Denes Balatoni
Dec 2, 2003, 22:23:04
 
> Completely misguided debian philosophy ...   Re: critique of debian and its philosophy   
Petr Balas
Dec 2, 2003, 22:55:33
 
> As this attack shows if they had upgra ...   Re: critique of debian and its philosophy   
loki
Dec 3, 2003, 01:15:17
 
Please, if you don&#39;t know what you&# ...   Re: Re: critique of debian and its philosophy   
anonymous
Dec 3, 2003, 04:52:32
 
Like I said in 1 of my previous post (ht ...   don't blame Debian, blame the kernel/OS for al   
Dom
Dec 3, 2003, 13:18:05
 
> I don&#39;t know enough about OpenBSD  ...   Re: don't blame Debian, blame the kernel/OS fo   
Daniel
Dec 3, 2003, 14:09:13
 
What a pile of crock! And misguided you  ...   Re: critique of debian and its philosophy   
Nick
Dec 3, 2003, 14:14:01
 
Hi again,I missed one point: Whose box a ...   Re: critique of debian and its philosophy   
Nick
Dec 3, 2003, 15:49:54
 
Are you out of your mind!??Debian has a  ...   Debian and Incident Response   
Felipe
Dec 9, 2003, 17:59:31
 
  Home | Search Talkbacks | Customize View    Top of Page  



Enter your comments below:

* Your Name:

* Your Email Address:

* Subject:

CC: [will also send this talkback to an E-Mail address]

* Comments:

Tags allowed:<I>,<B> and <U>. See our talkback-policy for more about talkback content.

Fields marked with * are required!






..............................




All times are recorded in UTC.
Linux is a trademark of Linus Torvalds.
Powered by Linux, Apache and PHP

internet.comearthweb.comDevx.commediabistro.comGraphics.com

Search:

Jupitermedia Corporation has two divisions: Jupiterimages and JupiterOnlineMedia

Jupitermedia Corporate Info

Legal Notices, Licensing, Reprints, Permissions, Privacy Policy.
Advertise | Newsletters | Tech Jobs | Shopping | E-mail Offers

Whitepapers and eBooks

Symantec Whitepaper: Converging System and Data Protection for Complete Disaster Recovery
Intel Whitepaper: Comparing Two- and Four-Socket Platforms for Server Virtualization
IBM Solutions Brief: Go Green With IBM System xTM And Intel
HP eBook: Simplifying SQL Server Management
IBM Contest: Are You the Next Superstar? Join the "Search for the XML Superstar" Contest to Find Out
Intel PDF: Quad-Core Impacts More Than the Data Center
Intel PDF: Virtualization Delivers Data Center Efficiency
Go Parallel Article: PDC 2008 in Review
Avaya Article: Communication-Enabled Mashups: Empowering Both Business Owners and IT
Intel Whitepaper: Building a Real-World Model to Assess Virtualization Platforms
PDF: Intel Centrino Duo Processor Technology with Intel Core2 Duo Processor
Microsoft Article: Build and Run Virtual Machines with Hyper-V Server 2008
  Go Parallel Article: Q&A with a TBB Junkie
IBM Whitepaper: Innovative Collaboration to Advance Your Business
Internet.com eBook: Real Life Rails
IBM eBook: The Pros and Cons of Outsourcing
Internet.com eBook: Best Practices for Developing a Web Site
IBM CXO Whitepaper: The 2008 Global CEO Study "The Enterprise of the Future"
Avaya Article: Call Control XML in Action - A CCXML Auto Attendant
IBM CXO Whitepaper: Unlocking the DNA of the Adaptable Workforce--The Global Human Capital Study 2008
Adobe Acrobat Connect Pro: Web Conferencing and eLearning Whitepapers
Symantec Whitepaper: Comprehensive Backup and Recovery of VMware Virtual Infrastructure
MORE WHITEPAPERS, EBOOKS, AND ARTICLES