2009/09/30

卡車司機

今天看到某高手的噗浪,發現用 Dev-C++ 編譯下面的程式碼,真的會讓卡車司機誤判:
#include<stdio.h>
#include<stdlib.h>

int main(void)
{
    system("md autorun.inf");
    system("attrib +r +a +h +s");
    return 0;
}

編譯後馬上會跳出警告視窗:



真開心......原來我會寫木馬 XD

6 則留言:

  1. 卡巴真的太扯了...這樣也抓= . =
    (資一乙,小宇路過...)

    回覆刪除
  2. 聽說卡巴還會和 windows 對幹 XD

    回覆刪除
  3. 我猜大概是 string literal 被原封不動地放到 .TEXT
    導致它以為你要 inject shell 吧(autorun.inf+ATTRIB)

    回覆刪除
  4. 大概吧.....(我不會組語 QQ)

    回覆刪除
  5. 我回宿舍拿程式反組譯看看,照你所說的應該會有特定區塊儲存文字資料,到時候看看 KAV 是不是針對特定區塊的資料作判斷。

    回覆刪除
  6. 改成:
    char a[] = "md autorun.inf";
    char b[] = "attrib -r -a -h -s";
    system(a);
    system(b);

    這樣不會被抓

    回覆刪除