2004年11月8日 星期一

wordpress 防 spammer

之前就已經提過 wordpress 防廣告留言的方式,這裡也有一個連結整理得還不錯:

2004年11月7日 星期日

駭客入侵事件簿2

雖然系統上的 openwebmail 已經修補起來了,但比較麻煩的是在 Forum: 0 day rumors 有人提到,OpenWebmail 還有一兩個 remote exploit 還有 local root exploit 尚未被發表。什麼時候會爆出來還不知道,希望到時候不會哀鴻遍野。

接下來的工作是追查入侵來源,以及系統內到底被修改了多少東西。這是很冒險的作法,比較快的方法是立刻重灌 (最安全的方法)。但我實在想知道這個入侵我們機器的駭客到底在想什麼,以及他還有沒有什麼絕招可以學的。

[[MORE]]
我又在 /var/tmp/.tmp 裡頭發現一個新的後門程式。owner 一樣是 www,從這裡可以發現,駭客大概還沒有拿到系統的 root (最高管理者帳號)。這裡有一個檔案:

-rwxr-xr-x 1 www wheel 206516 Aug 27 03:17 perlmail

是一個被編譯過的可執行檔。但我去分析裡面的內容之後,發現它是一個 IRC 用的 file server 的偽裝,這個軟體的名字叫做: iroffer。引述該網站上的話:

What is iroffer?
iroffer is a software program that acts as a fileserver for IRC. It is similar to a FTP server or WEB server, but users can download files using the DCC protocol of IRC instead of a web browser.

Unlike similar programs, iroffer is not a script, it is a standalone executable written entirely in c from scratch with high transfer speed and effeciency in mind. iroffer has been found to transfer over 50MByte/sec over a gigabit ethernet connection.

駭客還蠻聰明的,既然他只能拿到 www 的權限,那後門當然得偽裝成 www 有在持續執行的東西,才不會被發現。但也有人這麼說:除了系統啟動檔或軟體設定用的目錄之外,凡是用 . 開頭的資料夾通常有鬼。這個駭客就把他的東西放在一個 .tmp 的資料夾中。

/var/tmp/.tmp 資料夾內容如下:
-rw-r--r-- 1 www wheel 6 Sep 4 23:46 admin.pid
-rw-r--r-- 1 www wheel 1004 Aug 27 03:17 httpd
-rw-r--r-- 1 www wheel 164 Nov 8 00:46 mybot.state
-rw-r--r-- 1 www wheel 164 Nov 8 00:46 mybot.state~
-rwxr-xr-x 1 www wheel 206516 Aug 27 03:17 perlmail*
drwxr-xr-x 2 www wheel 512 Aug 27 03:16 up/

看一下 admin.pid 裡面只有一個數字: 54136
代表的是這個執行中的後門程序:
power# ps ax | grep 54136
www 54136 ./perlmail -s -n -b httpd

查了一下 54136 的程序:

power# lsof -p 54136
lsof: WARNING: compiled for FreeBSD release 4.9-STABLE; this is 4.10-STABLE.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
perlmail 54136 www cwd VDIR 13,131076 512 253959 /var/tmp/.tmp
perlmail 54136 www rtd VDIR 13,131072 512 2 /
perlmail 54136 www txt VREG 13,131076 206516 253996 /var/tmp/.tmp/perlmail
perlmail 54136 www txt VREG 13,131077 85876 492140 /usr/libexec/ld-elf.so.1
perlmail 54136 www txt VREG 13,131077 28432 342286 /usr/lib/libcrypt.so.2
perlmail 54136 www txt VREG 13,131077 580604 342352 /usr/lib/libc.so.4
perlmail 54136 www 0u VCHR 2,2 0t0 7823 /dev/null
perlmail 54136 www 1u VCHR 2,2 0t0 7823 /dev/null
perlmail 54136 www 2u VCHR 2,2 0t0 7823 /dev/null
perlmail 54136 www 3u IPv4 0t0 TCP no PCB, CANTSENDMORE, CANTRCVMORE
perlmail 54136 www 4u unix 0xd098c920 0t0 ->(none)
perlmail 54136 www 7u unix 0xd09c7400 0t0 ->(none)


目前正在執行中的後門程式:

power# ps ax | grep perlmail
www 24643 ./perlmail -s -n -b httpd
www 54136 ./perlmail -s -n -b httpd
www 66177 ./perlmail -s -n -b httpd
www 66435 ./perlmail -s -n -b httpd


有趣的是,同一個目錄中的 httpd 竟然是一個 ASCII 的純文字檔,應該就是 iroffer 的設定檔。也就因為它是一個純文字的設定檔,所以這個後門的設定開始逐漸明朗起來...

2004年11月5日 星期五

041105 工作紀要

完成明天資賦優異學生專業知能研習的三張海報。改了又改,而且要把它放大到全開大小,只好切割成一張一張。

啊~誰有可以啟動的 photoshop CS 可以借我? (正版)

2004年11月4日 星期四

國中成績 教師查詢 完成

今天完成程式:

國中成績查詢 - 教師版

這個程式有一個最大的貢獻是,以後可以使用老師們自己的電子信箱來做網頁存取,他們可以方便改變自己的密碼,而且一碼行遍天下。下次要把學生的也改成這樣。

可惡!

今天因為 php 程式裡面漏寫了一個關鍵字 function,訊息又不足,害我找了兩個小時之久!

2004年11月3日 星期三

041103 工作紀要

這裡填的工作有的是昨天或前天的,因為沒時間記。
我自己的電腦總算恢復得差不多了,沒有自己的輸入法就跟殘廢了是差不多的。現在工作環境建立起來之後,工作速度就可以稍微增加一點了。


  • 協助音二甲病痛學生就醫。

  • 訓育組、體育組、生活團、、生命教育中心的網址空間建立。

  • 自然科能力競試-資訊科 的訓練進入最後一個禮拜,目標是一個四名內,一個佳作。

  • 團購 mp3 player 已經結案。

  • 我自己的工作電腦系統重建。最花時間。

  • 修復教師郵局無法進入的問題。原因是硬碟爆掉。

  • 週六的國中小資賦優異特教研習的手冊封面及封底設計完成,並已付印。

  • 丁椿琳老師 Notebook 當機問題修復,原因是微軟新注音造成不穩。

  • 新電腦教室採購驗收結案。

  • 辜郁恬、李佩茹、蔡少宸三位教師帳號建立。

  • 今年度的初一新生網站作品展示區程式修改完成,初二的在這裡,高二的在這裡

  • 運動會照片整理,大約有將近 800MB 的資料,不久就可以上網了。

  • 教導吳昌倫老師使用讀卡機,以後國文科就有種子教師了。

  • 我的硬碟損壞評估出爐,交給行政會報去決定是否要花大錢修這個硬碟。

  • 協助初一意受傷學生就醫。(最近我的課不太平靜啊~ 一直在跑醫院...)

2004年11月1日 星期一

國中學生成績查詢系統差不多完成

由於國中現在採用九年一貫的學科成績計算,所以舊的成績查詢系統不敷使用。

於是我重新撰寫 國中成績查詢系統 的程式,現在已經大致上完成。

還沒完成的部分則是:

  1. 要重新設計介面的外觀

  2. 增加老師查詢全班成績的功能

  3. 增加加權比值的說明。

  4. 還有讓使用者也能自己修改密碼。


[[MORE]]
將成績檔案轉成 csv 格式之後,再將之匯入 MySQL 資料庫之中,採用的語法是:

LOAD DATA INFILE '/var/tmp/phpXyyliT' INTO TABLE `shsh_scores` FIELDS TERMINATED BY ',' ENCLOSED BY '"' ESCAPED BY '!' LINES TERMINATED BY 'rn'

也就是說,我改用 驚嘆號! 作為 Escape 字元,這是為了取代原本用反斜線當作跳脫字元的設定。(不會有人的名字中含有驚嘆號吧?那也太帥了。)如果預設使用反斜線當作跳脫字元,則可能造成某些字元,例如許功蓋這些字會變成亂碼。