惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
IT之家
IT之家
Microsoft Security Blog
Microsoft Security Blog
博客园 - 司徒正美
云风的 BLOG
云风的 BLOG
P
Proofpoint News Feed
D
DataBreaches.Net
B
Blog RSS Feed
博客园_首页
The GitHub Blog
The GitHub Blog
I
InfoQ
L
LangChain Blog
G
Google Developers Blog
M
MIT News - Artificial intelligence
美团技术团队
腾讯CDC
V
Visual Studio Blog
aimingoo的专栏
aimingoo的专栏
博客园 - 聂微东
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Apple Machine Learning Research
Apple Machine Learning Research
A
About on SuperTechFans
博客园 - 三生石上(FineUI控件)
博客园 - 叶小钗

Hacker News: Ask HN

The New Window Delete ChatGPT Atlas Spyware Tell HN: Qwen Free Tier Is Discontinued Ask HN: SeedLegals Partnerships in London, worth it? Ask HN: How to highlight talent from untraditional backgrounds? Ask HN: We dont need a programming language now? Durable Object alarm loop: $34k in 8 days, zero users, no platform warning What if Time at the subatomic level has multiple arrows? How to add MidnightBSD Key to UEFI Secure Boot DBX? (Revoked and Forbidden Keys) Ask HN: What's your experience working at xAI as an AI tutor? Any engineers here with experience of clinical data standards? Ask HN: Who is using OpenClaw? Agent Skills for Software Test Automation Ask HN: Who needs contributors? Claude Code is thinking too much Ask HN: What Is the Big-O Order of a Jigsaw Puzzle? Ask HN: Stepping into a new role as a Senior, mentoring dos and dont's? Founder from Zurich heading to SF and Austin for the first time Hacker News No Manual Screenshots: I Built a Scalable Screenshot API Using Cloud Playwright Ask HN: Thought experiment: AGI giving us answers we don't like? Ask HN: I quit my job over weaponized robots to start my own venture 1% Vacancy, 81% Preleased: Where Midmarket Compute Deploys in 2026 Ask HN: Preferred pricing model for sound effects libraries? Copy of the email I sent to my undergraduate professors on Nov 30, 2025 Model API Performance | Hacker News Ask HN: Are open-weight LLMs the new offline encyclopedias? Valgrind 3.27 RC1 is out Claude Code OAuth down for >12 hours Ask HN: What's Better?–Tauri or Electron?
Our keyboards are tracking us
tukunjil · 2026-05-11 · via Hacker News: Ask HN

Keyboards were always dangerous.

Very first 1981 IBM PC 5150 had special diagnostic backdoor routine hidden in POST code:

https://minuszerodegrees.net/5150/post/5150%20-%20POST%20-%2...

IF REQUESTED, LOAD DIAG. CODE "Take the clock pin in the motherboard's keyboard DIN connector LOW for 40 ms. (Done by the KBD_RESET subroutine.) If the attached device responds with the byte of 65h, the attached device is a special IBM device that supplies diagnostic/test code to the 5150 via the keyboard port. If 65h received, load in the diagnostic/test code (255 bytes) via the keyboard port, then execute the code."

Not that dangerous as it was only active for a split second during boot. But it gave peopple ideas. Zenith Data Systems implemented something similar in its ZBIOS, except meant to be active _at all times_ when computer runs :o

seg000:7B03 in https://github.com/raszpl/Zenith_ZBIOS/blob/main/Zenith%20Z-... :

    seg000:7B03 Backdoor_loader proc near              ; CODE XREF: Keyboard_Process_Modifiers+30↑p
      cli
      mov     ah, IO_Port_64h_KBC_CMD_60_WRITE_CONFIG
      call    Keyboard_KBC_command
      call    Keyboard_KBC_wait_input_ready
      mov     al, 5                                    ; magic Keyboard command to initialize backdoor code upload
      out     IO_Port_60h_KBD_Command, al
      call    Keyboard_Read_Synchronous
      mov     cl, al
      call    Keyboard_Read_Synchronous
      mov     ch, al
      mov     ax, 0
      mov     es, ax
      mov     di, offset 500h                          ; payload lands at 500h
    
    backdoor_load_loop:
      call    Keyboard_Read_Synchronous
      stosb
      loop    backdoor_load_loop
      jmp     far ptr 0:500h                           ; executing our payload
    Backdoor_loader endp

triggered by pressing [T while holding Ctrl:

    check_Backdoor_init_key:                           ; CODE XREF: Keyboard_Process_Modifiers+E↑j
       cmp     ch, 1Bh                                 ; Set-1 scancode [ (Left Bracket) key
       jnz     short check_Backdoor_trigger_key
       or      byte ptr cs:0CEh, 1
       jmp     error_exit

    check_Backdoor_trigger_key:
       cmp     ch, 14h                                 ; Set-1 scancode T key
       jnz     short clear_backdoor_gate
       test    byte ptr cs:0CEh, 1
       jz      short clear_backdoor_gate
       call    Backdoor_loader

Good news for Zenith customers from 1989 someone with more sense disabled this in final bios, but dead code is still there :)