cisco IOS rootkits

Στις παρουσιάσεις του EuSecWest βλέπω την ακόλουθη από τον Sebastian Muniz, exploit writer της Core Security Technologies:

“Killing the myth of Cisco IOS rootkits: DIK (Da Ios rootKit)

Public rootkit implementations for Cisco IOS have not been seen and system administrators tend to think that this is not possible or that even being possible, a generic method could not be created and that a skilled attacker is needed to target them. We will present DIK (Da Ios rootKit), a real multi-architecture rootkit to show that real threat exist and that advanced IOS forensics are probably not enought to detect it.

No public IOS rootkit implementation has been publicly presented before and the techniques employed here are generic and could be easiy usd to implement other closed-source OS rootkits.”

  1. Wow! Δεν είναι βέβαια η πρώτη φορά που το διαβάζει κανείς, π.χ. ήδη από το 2002 ο Rik Farrow έγραφε:

    “One rumor is that the source code for IOS, Cisco’s Internetworking Operating System, has been stolen. That rumor dovetails nicely with a second rumor, that a rootkit for Cisco routers is in the wild.
    :
    The notion of a Cisco rootkit disturbed me at first. I guess I just didn’t like to think of a router as something running a vulnerable OS with vulnerable services. But, of course, routers run operating systems. Cisco has written their own. Juniper Networks uses a modified version of BSD.”

    Έστω και μετά από τόσα χρόνια …wow!

  2. Ελπίζω να υπάρχει κανείς γνωστός που να του πλήρωσε ο εργοδότης τις £2100 (EuSecWest + The Exploit Laboratory) για να μεταφέρει αυτά που είδε.
  3. Θυμάμαι πως τον καιρό που δούλευα στο NTUA-NOC προσπαθούσα να βρω buffer overflow στον BGP listener των router. Ήταν φρέσκο το “Smashing the stack for fun and profit” τότε… Βέβαια εμένα με ενδιέφερε περισσότερο το denial of service (σαφώς πιο εύκολο) από το remote access ή ένα rootkit. Ο router-master υπολόγισε σωστά στον όγκο της καθημερινής εργασίας και αν και δεν ήθελε, μου έδωσε access για να “παίξω”. Χρειάζεται ελεύθερο χρόνο κανείς για να πειραματιστεί.
  4. Άντε να δούμε πότε θα αρχίσουμε να τρέχουμε third-party software στους router (online ή offline πάνω στο image δεν έχει σημασία)…

[via]

Workflow

Παρακολουθούσα μια διάλεξη για MIS όταν μου πέρασε από το μυαλό μου (όχι μια σφαίρα ρε!) η παρακάτω σκέψη:

“Workflow είναι η (ελλειπής) απεικόνιση της γραφειοκρατίας ενός οργανισμού σε ένα υπολογιστικό σύστημα”

Δεν ήμουνα σε φόρμα μάλλον…

spare parts (a Faber-Castell story)

“Why is it that every time I struggle with a tough problem, I turn away from my sophisticated software tools and grab a plain sheet of paper?” –dds, On Paper.

Μου αρέσει να γράφω σε χαρτί. Με μολύβι. Θα μπορούσε να πει κανείς πως έχω μια mini συλλογή κιόλας: H γυναίκα μου μου έκανε δώρο ένα “Trio metal multifunction pen“, ενώ ο κουμπάρος μου μου “κόλλησε” το “Castell perfect pencil“. Δυστυχώς σε ένα ταξίδι στην Εσθονία έχασα το καπάκι του “Trio metal”. Προσπάθησα να βρω ανταλλακτικό. Μετά από τρία καταστήματα, τηλεφωνήματα και μερικές μέρες αναμονής ήρθε ή απάντηση:

“Πρέπει να το δώσουμε στην αντιπροσωπεία, να το στείλει στη Γερμανία ως χαλασμένο και να περιμένουμε ένα μήνα για επισκευή ή αντικατάσταση!”

Μα να σταλεί στη Γερμανία για ένα καπάκι; Και τη στιγμή μάλλιστα που στις ΗΠΑ η αντίστοιχη αντιπροσωπεία το πουλάει online για $6 και το στέλνει ταχυδρομικά; Δυστυχώς όχι εκτός ΗΠΑ.

Ευτυχώς που υπάρχουν και οι φίλοι και μπορούν και μας εξυπηρετούν. Μάνο ευχαριστώ!

__
Ο Vaggelis για τα μηχανικά μολύβια: Engineering των 2 ευρώ.

6289

Τόσα email μόλις διάβασα / απάντησα / έσβησα.

2310 περιμένουν. Όχι δεν θα κυρήξω χρεοκοπία:

email bankruptcy n.
Choosing to delete, archive, or ignore a very large number of email messages without ever reading them, replying to each with a unique response, or otherwise acting individually on them.

11/12

Τι μου μένει από τη φετινή σεζόν; Δύο νίκες και μια ήττα. Sorry, τρεις νίκες. Α και το ότι είδα το Ολυμπιακός – Τσέλσι από τo stream της Nova στο Internet για € 5 (ή κάπου τόσο).

Τίποτα από αυτά όμως δεν έχει να κάνει με το φετινό πρωτάθλημα :(

Για του χρόνου περιμένω: καλύτερη “Αθλητική Κυριακή”, λιγότερο Πέτρο Μίχο, να έχω χρόνο για να αγοράσω “διαρκείας” και να αρχίζει η αθλητική εκπομπή της ΕΤ3 νωρίτερα.
__
Σχετικό post: 10/11

Introduction to Queueing Theory

Μια και το έφερε η κουβέντα, να ένα βιβλίο για ουρές, διαθέσιμο online:

Μπορεί να είναι πολλές οι σελίδες, αλλά δεν παύει να είναι χρήσιμο reference. Το προηγούμενο εξάμηνο έκανα την “επανάλληψή” μου διαβάζοντας τα κεφάλαια 2 και 5 του “Telecommunication Networks: Protocols, Modeling and Analysis” του Mischa Schwartz και μόλις πριν λίγο καιρό έπεσα πάνω σε αυτές τις 30 σελίδες γραμμένες από τον Stallings.

bnx2, Etch and Lenny

[ Update: For lenny RC1 and bnx2 issues read this blog post instead. What follows are my troubles with the beta 1 installer for lenny. ]

Management got us a Dell PowerEdge 1950. It was decided that it would run Debian. I got the Etch businesscard installation CD and booted the machine. The installation progressed, but after the network configuration it could not resolve its name. From the alternative console I found out that the ethernet interface was recognized and setup correctly, but no packets were coming in or going out. What a perfect way to waste the workday: Could it be the cable? Not it was not. Could it be the switch? Nope, the switch was working perfectly. Could it be the (bnx2) driver then?

I booted the machine using the Lenny’s beta 1 businesscard CD. The installation completed in a flash. Then the machine rebooted and …the network interface was not recognized. It turns out that bnx2 is not included in the latest version of the linux kernel that is installed by Lenny (see the Binary Firmware Inventory). So the installer supports the network card, but the installed system does not.

I decided to work with Etch again. I downloaded the full Etch CD-1 and installed the system. Again the network could not be reached, but the installation for a (tasksel) standard system completed successfully. I also installed make, gcc and kernel-package so as to be able to compile a new kernel. Since the problem might be that the driver is loaded as a module, I compiled and installed a kernel with bnx2 included (CONFIG_BNX2=y). Nope that did not work either. bnx2 is the driver for the Broadcom NetXtreme II. Fortunately Broadcom distributes the linux driver sources from their site. I built a new kernel without bnx2 support (CONFIG_BNX2=n) and installed bnx2 as a module from the broadcom sources. Again no luck.

Then it struck me: The Dell PowerEdge 1950 has two network interfaces, marked as Gb #1 and Gb #2. All this time (including the Lenny installation that worked via the network) I was working with network interface Gb #1. I plugged the ethernet cable into interface Gb #2. The network was working perfectly.

@!)#($*%^&?

So, Etch (linux-2.6.18 ) sees NIC Gb #2 as eth0, whereas the Lenny beta1 installer sees NIC Gb #1 as eth0 !

I shut down the machine and went home.

I wanted to cry.

Quotas

Όλα τα χρόνια που κάνω αυτή τη δουλειά ποτέ δεν ήμουν οπαδός των quotas. Το όριο χρήσης ενός πόρου, όσο κι αν προκύπτει από μετρήσεις ή εκτιμήσεις δεν παύει στην πραγματικότητα να είναι αυθαίρετο. Κι ας υπάρχει αντικειμενικός λόγος που το θέτει εν ισχύ κάποιος: Η συνολική προστασία του συστήματος και η εξασφάλιση της συνέχισης της λειτουργίας του. Το όριο είναι αυθαίρετο γιατί υπάρχει πάντα εκείνος ο χρήσης που είναι λίγο πάνω από αυτό και με καλό λόγο.

Αν υποθέσουμε πως κάποιος έχει όριο στο home directory του τα 200MB, όταν αυτά ξεπεραστούν για 10 bytes (ή και λιγότερα ακόμα), πως μπορεί να ξέρει το σύστημα εάν αυτό συμβαίνει επειδή αποθηκεύει ο χρήστης ένα paper σημαντικό για την εργασία του ή ένα MP3; Απάντηση: Το σύστημα δεν μπορεί να ξέρει. Άσε που για το χρήστη το MP3 μπορεί να είναι και ισοδύναμα σημαντικό. Το σύστημα ξέρει μόνο νούμερα. Έχεις μέχρι N-bytes. Στα N+1… tough luck.

Για αυτό ποτέ στις δουλειές μου μέχρι τώρα δεν υλοποίησα ένα τέτοιο σύστημα. Όσο ισχυρά κι αν διατυπώθηκε η απαίτηση. Κι ας είναι οι χρήστες σαν ιδανικά αέρια. Γιατί αυτά τα 10 bytes παραπάνω μπορεί να είναι σημαντικά. Και γιατί για αυτά τα 10bytes (ενώ υπάρχει χώρος) ο χρήστης μπορεί να κάνει κατεργαριές που να προκαλέσουν βλάβη στο σύστημα. Ενώ αυτός το μόνο που θέλει, είναι να κάνει τη δουλειά του. Το έχω δει. Αντίθετα, στα “δικά μου συστήματα” εάν κάποιος έπαιρνε είδηση πως παρόλο που υπάρχουν δεδηλωμένα quota limits, αυτά ήταν μόνο “στα χαρτιά” και εκμεταλλευόταν το γεγονός, μια παράκληση του τύπου “Κάντε ένα clean-up γιατί διαφορετικά θα πρέπει να τα υλοποιήσω για όλους” αρκούσε.

Οι καιροί όμως αλλάζουν. Και μπορεί οι ISPs να μη δίνουν (όλοι) IMAP, αλλά δίνουν webmail access. Το Gmail αλλάζει τον τρόπο με τον οποίο αντιμετωπίζουν οι χρήστες την αλληλογραφία τους, ανεξάρτητα από τον mail provider. Και όλο και πιο πολλοί χρήστες “γλυκαίνονται” και επιλέγουν το “leave messages on server” στον POP3 client τους. Έτσι και το (μαθηματικό) μοντέλο αλλάζει. Ο mail (POP3) server δεν είναι πλέον ο ενδιάμεσος σταθμός. Είναι ο τελικός. Και αυτό τα αλλάζει όλα. Αυτά το +10 bytes γίνονται ξαφνικά πολύ σημαντικά, γιατί η υπέρβασή του ορίου δεν είναι στιγμιαία ή παροδική. Είναι μόνιμη.

Έτσι την προηγούμενη εβδομάδα για πρώτη φορά (ελπίζω και τελευταία) και με βαριά καρδιά, έκανα strong enforcement. Ελπίζω προσωρινά.

Τώρα αν μπορούσα να απαλλαγώ και από τα υπόλοιπα καθήκοντά μου ώστε να γράψω drivers για να παίζει το IMAP toolkit πάνω από κάτι σαν το HDFS…