999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于安全硬件的Windows自定義登錄的實現*

2019-04-24 08:15:38彭金輝李橙橙
網絡安全與數據管理 2019年4期
關鍵詞:進程程序用戶

彭金輝,李橙橙

(鄭州信大捷安移動信息安全關鍵技術國家地方聯合工程實驗室,河南 鄭州 450004)

0 引言

Windows系統從Vista開始采用新的登錄機制“票據提供程序”(Credential Provider)[1],相對于以往Windows XP的登錄機制“圖形化識別和驗證”(Graphical Identification and Authentication,GINA),Credential Provider安全性高,靈活度大。登錄進程使用“身份認證包”(Authentication Package)[2]分析登錄數據,可以通過添加新的身份認證包將新的登錄過程添加到系統中。本文介紹一種自定義的Windows登錄程序,該程序基于鄭州信大捷安信息技術股份有限公司(以下簡稱“信大捷安”)自主研發的USBKEY,通過驗證PIN碼獲取USBKEY內用戶證書使用權限,再驗證用戶證書的真實性、合法性和有效性。證書能夠證明用戶身份合法有效。PIN碼和證書認證可以提高登錄的安全性。相比較僅開發Credential Provider組件而不開發Authentication Package的方案,并存儲用戶名和密碼的自定義登錄方式,本文的解決方案登錄過程可完全自定義,無需驗證登錄密碼,只保存用戶名即可,可有效避免保存的登錄密碼和實際不一致而造成系統無法登錄的情況。

1 自定義登錄解決方案

自定義登錄程序中設計自定義Credential Provider程序,實現自定義的UI登錄界面和獲取指定登錄信息,通過設置Filter程序指定使用特定的Provider;設計自定義Authentication Package,獲取指定登錄信息,驗證PIN碼、證書和用戶名信息實現自定義的身份認證;自定義登錄的USBKEY已經通過發證系統發過加密證書和簽名證書[3]。在自定義登錄程序安裝時將當前用戶與USBKEY內置簽名證書序列號建立綁定關系,數據由加密證書公鑰加密之后密文數據[4]存入注冊表。

自定義用戶登錄Windows系統時,先驗證用戶PIN口令是否正確,成功之后,讀取注冊表用戶和證書的綁定密文數據,用卡內加密證書的私鑰進行解密[5],比較當前用戶和卡內簽名證書序列號是否匹配,成功提交登錄信息,登錄系統。簽名證書作為用戶身份的唯一標識,存儲在USBKEY內,保證登錄過程的安全性。

2 程序開發

2.1 Windows登錄機制

Windows登錄機制的實現[6]如圖1所示。

圖1 Windows登錄機制的實現

當系統啟動時,Winlogon進程開始用戶登錄時,首先創建LogonUI進程,顯示用戶登錄界面,并與LogonUI進程交互,獲取用戶填寫的用戶名等登錄信息。Lsass進程負責檢查登錄信息的合法性。當用戶輸入用戶名等登錄信息并提交登錄時,Winlogon進程通過ALPC與Lsass進程交互,確認用戶提交登錄信息是否有效。Windows為自定義登錄提供了相應的機制。票據提供程序(Credential Provider)用來實現登錄界面的自定義,認證包(Authentication Package)用來實現登錄信息驗證的自定義。

2.2 開發自定義Credential Provider

Windows XP利用GINA機制來登錄,從Vista開始采用新的登錄機制,名為Credential Provider[7]。該機制由兩部分組成:Provider和Filter。Provider和Filter都是實現了相應接口的COM對象,其在系統中的物理存在形式是dll文件。Provider實現Icredential Provider Credential和Icredential Provider接口,負責用戶登錄界面的顯示和用戶填寫登錄信息的獲取。Filter實現Icredential Provider Filter接口,負責在系統登錄的時候過濾Provider,指定使用系統中特定的Provider。

本文自定義Windows登錄程序,通過Credential Provider設置自定義登錄界面,替換系統登錄界面,登錄界面包含用戶自定義標題圖片、PIN碼輸入框[8]、認證按鈕,示例代碼如下:

static const FIELD_STATE_PAIR s_rgFieldStatePairs[] =

{

{

CPFS_DISPLAY_IN_BOTH,

CPFIS_NONE

},

// SFI_TILEIMAGE

{

CPFS_DISPLAY_IN_SELECTED_TILE,

CPFIS_FOCUSED

},

// SFI_PINWORD

{

CPFS_DISPLAY_IN_SELECTED_TILE,

CPFIS_NONE

},

// SFI_SUBMIT_BUTTON

};

static const

CREDENTIAL_PROVIDER_FIELD_DESCRIPTORs_rgCredProvFieldDescriptors[] =

{

{

SFI_TILEIMAGE,

CPFT_TILE_IMAGE,

L"Image",

CPFG_CREDENTIAL_PROVIDER_LOGO

},

{

SFI_PINWORD,

CPFT_PASSWORD_TEXT,

L"請輸入PIN碼"

},

{

SFI_SUBMIT_BUTTON,

CPFT_SUBMIT_BUTTON,

L"Submit"

},

};

設置UI以后修改GetSerialization函數,在該函數中提交默認用戶名Administrator和PIN碼交由自定義Authentication Package認證,認證用戶名和PIN碼之后由ReportResult函數返回驗證結果。驗證成功則成功登錄Windows系統。自定義Credential Provider完成以后,編寫Filter功能在函數里面增加過濾條件,加載自定義的Credential Provider。

2.3 開發自定義Authentication Package

Authentication Package在系統中的物理存在形式是一個dll文件,其導出若干個預定義的函數。該dll文件由lsass.exe進程在系統啟動時加載,提供用戶登錄信息的認證服務。Windows操作系統本身提供了MSV1_0和Kerberos等Authentication Package,另外可以通過注冊表配置自定義的Authentication Package,實現自定義認證服務。

注冊表路徑:HKEY_LOCAL_MACHINESystemCurrentControlSetControlLsaSecurityPackages,值是Authentication Package對應的dll文件名的列表(不包含擴展名)。類型是REG_MULTI_SZ,所以列表中的每個文件名都由一個空字符(’

主站蜘蛛池模板: 国产91蝌蚪窝| 成人av手机在线观看| 伊伊人成亚洲综合人网7777| 久久国产黑丝袜视频| 婷婷色婷婷| 欧美精品另类| 亚洲欧美天堂网| 免费可以看的无遮挡av无码| 午夜精品一区二区蜜桃| 精品一区二区三区水蜜桃| 亚洲成人精品久久| 成人精品亚洲| 亚洲中文字幕久久精品无码一区| 青青草原国产| 97免费在线观看视频| 91视频国产高清| 国产欧美亚洲精品第3页在线| 日韩在线第三页| 婷婷久久综合九色综合88| 色妞www精品视频一级下载| 欧美中文字幕一区| 中文字幕波多野不卡一区| 午夜性爽视频男人的天堂| 欧美一级在线播放| 亚洲欧美日韩中文字幕一区二区三区 | 中文字幕免费视频| 免费99精品国产自在现线| 国产农村妇女精品一二区| 青青青国产视频| 国内视频精品| 国产一区亚洲一区| 亚洲精品午夜无码电影网| 日韩成人在线视频| 亚洲中文字幕无码爆乳| 强乱中文字幕在线播放不卡| 国产原创自拍不卡第一页| 国产成人亚洲无码淙合青草| 国产精品高清国产三级囯产AV| 偷拍久久网| 日韩午夜伦| 久久久久久高潮白浆| 99精品国产高清一区二区| 99这里只有精品免费视频| 欧美一区二区精品久久久| 免费毛片全部不收费的| 在线欧美日韩国产| 国产网友愉拍精品| 99久久免费精品特色大片| 亚洲精品高清视频| 一本大道视频精品人妻 | 午夜性爽视频男人的天堂| 99ri精品视频在线观看播放| 国产性爱网站| 亚洲视频无码| 久久综合干| 91口爆吞精国产对白第三集 | 久久国产精品夜色| 青青操国产视频| 福利国产微拍广场一区视频在线| www.精品视频| 国产一线在线| 欧美性猛交一区二区三区| 天天摸天天操免费播放小视频| 欧美区一区| 亚洲伊人久久精品影院| 欧美在线精品怡红院| 亚洲va视频| 国产亚洲一区二区三区在线| 国产呦视频免费视频在线观看| 国产精品毛片在线直播完整版| 精品欧美一区二区三区在线| 亚洲精品爱草草视频在线| 四虎永久在线| 在线不卡免费视频| 国产精品美女自慰喷水| 黄片一区二区三区| 日本高清在线看免费观看| 久久一本日韩精品中文字幕屁孩| 久久国产精品麻豆系列| 无码乱人伦一区二区亚洲一| 九九热精品免费视频| 亚洲成人黄色网址|