Seems like the digital fortress that is OS X is finally starting to crack. Andrew over at the Ambrosia Software Web Board writes about what he sees as a Trojan for OS X which was postet at the MacRumors.com website.

It’s a little compressed file pretending to include screenshots of the next OS X version. When decompressed it appears to include a JPG file which in reality is a UNIX executable that performs several malicious functions.
From what he found out the Trojan tries to send itself via iChat to all your buddies, there is also code that tries to spread the Trojan via eMail but it looks like it’s not entirely finished.

Read more about the dissection in the original thread » here. Included is also a disassembled version (textfile) of the Trojan.

Here is the thread at MacRumors.com (link to the original file deleted).

So maybe it’s time for us Mac users to start running a virus scanner in the background while working?

Update: robg of macosxhints.com examined the Trojan a little further for Macworld at Digging deeper into the Leap-A malware. His resum??is the following:

I am now officially very sick of Leap-A, having spent probably 18 hours on it over the last two days. The short summary is that it’s a bad piece of malware that could have been worse but it’s far from the self-propagating internet-spreading virus/worm that’s been described on other sites. At the end of the day, it’s really just a good reminder to be very careful about what you download and install on your Mac.

I thought I’d post a little howto on how I try to keep the data on the hard drive of my little iBook save. So without further ado… here it is:

  1. This steps actually involves leaving your beloved home. Beware it might be very bright and sunny outside! What you are after is an external hard drive of similar or preferably greater size than your internal HD. In my case I bought a 250GB drive savely kept in an external case which has one USB 2.0 & two FireWire ports. FireWire was particularly important for me, because of the Mac’s capability to boot from FireWire drives but more on that later.
  2. hds.pngNext I partitioned the hard drive (using HFS+ for maximum compatibility under OS X) with one partition serving as the mirror for my internal 60GB disk. The rest of the disk is used as backup space for other data, right now we’ll only care about the mirror drive.
  3. My main goal was to get a fully functional clone of my internal disk, so in the event of a disaster, if my drive crashed I could just plug in the external mirror, boot it and work on as usual. After a little bit of searching, the best tool I found for cloning disks on the Mac is CarbonCopyCloner. So I made a clone of my internal disk to the mirror partition checking the “Make bootable” option in CCC’s preferences.
  4. After the clone operation finished I tested the mirror by choosing System Preferences it as the startup disk in Mac OS X’s System Preferences and restarting the OS. It started up perfectly and I had the exact same system in front of me, except for the fact that it was running off the external FireWire drive and the internal disk was completely powered down.
  5. Now that I had my working mirror savely stored at home in case of disasters, I only needed a solution to keep it up to date. Synchronize! X Pro Again Google was my friend and after a few searches I came up with Synchonize! Pro X which has loads of options for possibly every synching need you might have or develop in the future. At the moment I’m just using the “Bootable System Backup” option to synch my internal disk with the external one.
  6. Never forget to test your backups! About every second or third sync I invest a few minutes of my valuable time to restart my iBook from the external drive to make sure the backup disk is working as desired.

I know it might not be perfect to do this just “whenever I think of it” (which is currently about twice a week) but it is still far more effective than my previous non-backup strategy which I kept running for over one year. Especially considered that I’m using my iBook on the road (at uni, at work etc.), always carriyng it around in my backpack which exposes it to the high risk of being damaged easily. With my current solutin my data is safe and I could even go to any arbitrary Mac, plug in the external drive, reboot and have my usual working environment running on the system.

edit: I know I could have maybe used Synchronize! X Pro for the entire progress of cloning and synching my hard drive. The reason I chose the detour over CCC was that I initially wanted to choose this programm for the synching as well but encountered that it was painfully slow and not as easy a one-click-solution as Synchronize! X Pro.

Ich habe schon längere Zeit die x-forwarding Funktion von SSH und den Apple Xserver vewendet um mir X Applikationen von diversen Linux Rechnern im LAN und über das Internet lokal anzeigen zu lassen. Was mich aber immer schon geärgert hat, ist dass ich nicht den kompletten Desktop, inkl. Windowmanager usw., einer entferntetn Maschine in einem Fenster am OSX Desktop darstellen lassen konnte.

Auftritt Xnest 🙂

Xnest ist ein X-Server und ein X-Client zugleich. Es benötigt einen laufenden X-Server und stellt seinerseits wiederum einen X-Server für alle in Xnest ausgeführten Anwendungen bereit.

Ich habe nun zwei mögliche Wege herausgefunden um das gewünschte zu erreichen:

Linux Box im LAN

Dies setzt voraus dass XDMCP für Entfernte Anmeldungen aktiviert ist und der lokale X-Server läuft.
Xnest :1 -geometry 1024x768 -query 192.168.0.3

Erklärung:

  • Xnest :1 startet einen neuen X-Server in einem Fenster und weißt Display 1 zu (da auf Display 0 bereits der lokale X-Server läuft)
  • -geometry 1024×768 legt fest wie groß das Fenster sein soll
  • -query 192.168.0.3 unter dieser IP ist mein Linux Computer im LAN zu erreichen

Der Anmeldebildschirm über XDMCP Der GNOME Desktop in Xnest

Linux Box per SSH

ssh -XC yourdomain.com
Xnest :1 -geometry 1024x768 &
xterm -display :1

Erklärung:

  • ssh -XC yourdomain.com startet eine SSH verbindung mit aktiviertem x-forwarding und Kompression (ist schneller) zu der gewünschten Linux Kiste
  • Xnest :1 -geometry 1024×768 & macht das gleiche wie im ersten Beispiel, nur wird diesmal das Xnest Fenster über die SSH Verbindung am lokalen X-Server dargestellt und danach die Konsole wieder freigegeben (durch das Zeichen “&”)
  • xterm -display :1 startet ein Terminal und stellt es auf Display :1 dar, dieses Display ist das Xnest Fenster, welches wiederum am lokalen X-Server dargestellt wird

Als letztes muss man nur noch in dem xterm im Xnest Fenster ein DE oder einen WM starten. In meinem Fall habe ich “gnome-session” eingegeben um den GNOME 2.0 Desktop zu starten.