Kon-boot 2.4分析

1.bootx64.efi

U盘中bootx64.efi:uefi 应用,用来加载u盘中KonBootDxeX64.efi驱动,运行磁盘中的启动文件 bootx64.efi(Windows中bootx64.efi与bootmgfw.efi为同一文件)

打印信息

image

Scan_80000CA8 获取磁盘信息

image

加载KonBootDxeX64.efi驱动

find_800013F8查找\efi\boot\KonBootDxeX64.efi

Load_start_Image_80000C1C 加载KonBootDxeX64.efi驱动

image

最后加载原始磁盘中的bootx64.efi

image

start_original_boot_80000EA0

image

2.KonBootDxeX64.efi

主要操作:

hook gEfiRuntimeServices->GetVariable

设置事件EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE回调函数

image

hookGetVariable_3198

image

get_idt_base_80003221

image

initfunc_80001B1C

image
image

find_export_func_800013DC

image

LSH16_80001354

image

PsSetLoadImageNotifyRoutine(imgloadNotifyRoutine_80001A1C);

image

imgloadNotifyRoutine_80001A1C

image

image

image

patch_winlogon_80001514

image

gEfiBootServices->CreateEvent EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE,

gEfiBootServices->CreateEvent(

EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE,

TPL_NOTIFY,

(EFI_EVENT_NOTIFY)NotifyFunction,

0i64,

&Event);

NotifyFunction

image

posted @ 2022-01-22 19:04  DirWangK  阅读(360)  评论(0编辑  收藏  举报