通過環境變數user和pass指定使用者密碼,如果驗證失敗則sleep 2秒防止惡意攻擊。程式需要owner為root來執行,並設定suid保證其他使用者能執行。 這個簡單的程式會有什麼漏洞不??
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#define _xopen_source
#include
#include
#include
#include
#include
#include
int
check_password (
const
char
*user,
const
char
*password)
errno
= 0;
user_data = getspnam (user);
if
(user_data == null)
if
(
strcmp
(crypt (password, user_data->sp_pwdp), user_data->sp_pwdp) != 0)
return
0;
}
int
main (
void
)
makefile:?
1
2
3
4
5
6
all:
gcc -wall -o cgitauth cgitauth.c -lcrypt
chmod u+s cgitauth
install:
cp -a cgitauth /usr/bin
這東西用來幹嘛的?
好吧,是配合apache2的mod_authnz_external 做系統使用者驗證的,資料檔案就是/etc/shadow咯。
linux c 驗證 linux 使用者密碼
最初linux將使用者的密碼通過某種one way function得到乙個雜湊 加密 後的字串,並儲存該字串在密碼檔案中,但這種方式易遭受字典攻擊,攻擊者只有準備好字典,使用相同的one way function計算出對應的值,逐個對比就ok就可以攻破。為了提高安全性,引入salt,所謂的salt...
python呼叫Linux C系統使用者認證介面
p.s.使用python版本為2.7 py3有點小驚喜哦 我不寫c,原因暫不深究了 1.乙個基本使用者驗證介面無非包括兩點 使用者名稱 密碼 2.在密碼部分還需要考慮輸入不顯示提高安全性 大體只要實現這兩點功能,乞丐版功能便做完了。對於第一點 linux系統的使用者及認證資訊,儲存在passwd和s...
用jquery寫自己的form表單驗證
這幾天看了鋒利的jquery,感覺很不錯。特別是jquery強大的選擇器。今天就利用jquery寫了乙個自己的form表單驗證的小案例。當鞏固下jquery。首先貼下 當然只是乙個小案例。思路 1 這裡的 validate 是我們需要驗證的型別 屬於日期型別 這裡你也可以自己定義。id屬性就不用說了...