删除bios无线白名单

逆向工程 艾达 BIOS 欧菲
2021-06-22 04:29:48

我正在尝试从运行 Debian Buster 的 Thinkpad L540 中删除无线网卡的白名单。我做了以下步骤:

  1. 使用内核参数启动 iomem=relaxed
  2. 使用pawn转储 BIOS
  3. 进行了多次转储并比较了 md5sum 以确保我有一个有效的转储
  4. 我用UEFITool打开了 BIOS 转储
  5. 搜索字符串“未经授权的网卡....”
  6. 我找到了 PE32 图像部分并提取了正文。这是一个efi文件
  7. 使用 IDA free 打开文件并搜索十六进制以找到该函数。

这是IDA生成的文件

我不知道如何获得图表视图。我不确定要改变什么。但我认为这是相关的部分:

sub_6FC proc near

var_148= qword ptr -148h
var_140= qword ptr -140h
var_138= qword ptr -138h
var_130= qword ptr -130h
var_128= byte ptr -128h
var_F8= byte ptr -0F8h
arg_0= qword ptr  8
arg_8= qword ptr  10h

mov     rax, rsp
mov     [rax+8], rbx
push    rdi
sub     rsp, 160h
lea     r8, [rax+10h]
mov     rax, cs:qword_1040
mov     rbx, rcx
lea     rcx, qword_458+8
xor     edx, edx
call    qword ptr [rax+140h]
xor     edi, edi
cmp     rax, rdi
jl      loc_7FF
mov     edx, [rbx+4]
movzx   r9d, word ptr [rbx]
cmp     edx, 0FFFFFFFFh
jnz     short loc_75D
movzx   eax, word ptr [rbx+2]
lea     r8, a04x04x     ; "%04x/%04x"
lea     edx, [rdi+28h]
lea     rcx, [rsp+168h+var_128]
mov     dword ptr [rsp+168h+var_148], eax
call    sub_F9C
jmp     short loc_78E

loc_75D:
movzx   ecx, word ptr [rbx+2]
movzx   eax, word ptr [rbx+4]
shr     edx, 10h
mov     dword ptr [rsp+168h+var_138], edx
mov     dword ptr [rsp+168h+var_140], eax
mov     dword ptr [rsp+168h+var_148], ecx
lea     rcx, [rsp+168h+var_128]
lea     r8, a04x04x04x04x ; "%04x/%04x/%04x/%04x"
mov     edx, 28h ; '('
mov     di, 1
call    sub_F9C

loc_78E:
mov     r8, cs:off_298
lea     r9, [rsp+168h+var_128]
lea     rcx, [rsp+168h+var_F8]
mov     edx, 0F0h ; 'ð'
call    sub_F9C
mov     rax, cs:qword_2A0
mov     r9d, dword ptr cs:qword_280+0Ch
mov     r8d, dword ptr cs:qword_280+8
mov     ecx, dword ptr cs:qword_280
mov     [rsp+168h+var_130], rax
lea     rax, [rsp+168h+var_F8]
movzx   edx, di
add     edx, dword ptr cs:qword_280+4
mov     [rsp+168h+var_138], rax
mov     rax, cs:off_290
mov     [rsp+168h+var_140], rax
mov     rax, cs:qword_1028
mov     [rsp+168h+var_148], rax
mov     rax, [rsp+168h+arg_8]
call    qword ptr [rax+8]

loc_7FF:
mov     rbx, [rsp+168h+arg_0]
add     rsp, 160h
pop     rdi
retn
sub_6FC endp

我想更换jl loc_7FFto jmp loc_7FF但我不确定这是否正确。

我不知道如何提供图表视图。

谢谢您的帮助

0个回答
没有发现任何回复~