#include "apue.h"
#include
char buf1 = "abcdefghij";
char buf2 = "abcdefghij";
intmain(void)
這個是證明這個檔案會產生乙個洞。首先這個裡面有三個主要函式。
creat,
write,
lseek。
12行建立乙個檔案,將檔案控制代碼存再fd中。
15行,向檔案中寫入10個字元,也就是buf1中內容
19行,將檔案指標放在16384位置,但是中間沒有寫過內容呢,所以這裡面是空的。
23行,向檔案中寫入10個字元,也就是buf2的內容。
來看看它的輸出吧。
$ ./a.out
$ ls -l file.hole check its size
-rw-r--r-- 1 sar 16394 nov 25 01:01 file.hole
$ od -c file.hole let's look at the actual contents
0000000 a b c d e f g h i j /0 /0 /0 /0 /0 /0
0000020 /0 /0 /0 /0 /0 /0 /0 /0 /0 /0 /0 /0 /0 /0 /0 /0
*0040000 a b c d e f g h i j
0040012
這個檔案已經有洞了,這個檔案最後指標是16394,那麼讓我建乙個同樣大的檔案來對比一下。
$ ls -ls file.hole file.nohole compare sizes
8 -rw-r--r-- 1 sar 16394 nov 25 01:01 file.hole
20 -rw-r--r-- 1 sar 16394 nov 25 01:03 file.nohole
最開始的『塊「是不一樣的。
滲透測試學習23 弱口令高階
tomcat 輕量級伺服器 爆破 可以收集一些別的師傅的 github找 自己在滲透實戰後也應該總結字典。有時資訊收集時可以得到mysql路徑 mysql預設埠3306 於是我麼可以嘗試爆破得到mysql管理賬號密碼。爆破工具 爆破得到密碼後可以嘗試寫shell,提權等操作。寫shell 有絕對路徑...
UNIX環境高階程式設計學習筆記
include include include include int main int argc,char argv err sys can t open s argv 1 while dirp readdir dp null printf s n dirp d name closedir dp ...
UNIX環境高階程式設計學習筆記(一)UNIX基礎知識
1.作業系統可被定義為一種軟體,它控制計算機硬體資源,提供程式執行環境。通常稱為核心 kernel 2.核心的介面被稱為系統呼叫。公共函式庫建在系統呼叫介面之上,應用程式既可使用公共函式庫,也可使用系統呼叫。shell是乙個特殊的應用程式,為執行其他應用程式提供乙個介面.3.unix檔案系統是目錄和...