29. 如附圖所示是一段 Python 程式碼,你受聘於一個公司進行源碼檢測,需確認程式碼中是否隱藏潛在的惡意行為或漏洞。經分析發現,x() 函數對輸入執行了某種操作,並透過字串反轉進行額外處理。下列何項最正確地描述該程式碼的功能具有潛在風險?

(A) 程式碼使用一種簡單 XOR 加密,有容易被破解的風險
(B) 程式碼包含難以追蹤的邏輯漏洞,可能被用於後門驗證邏輯
(C) 程式碼進行了無法逆向的加密方式,無法直接解密字串 SYP{txf_ofq}
(D) 程式碼邏輯錯誤,t 的結果永遠無法等於 "}afq{noT_SPY"

答案:登入後查看
統計: A(32), B(9), C(9), D(6), E(0) #3536975

詳解 (共 2 筆)

#6622505
問題 29:簡易 XOR+字串反轉驗證...
(共 1198 字,隱藏中)
前往觀看
3
0
#6721931

Dominando-a-Tabela-Verdade-XOR-Algebra-Booleana-e-Nocoes-Basicas_webp.webp?v=1719415827

68d7c77e6f73e.jpg

68d7c72c4a397.jpg68d7c738aaaab.jpg

68d7c095e91a9.jpg

考試導向(要讓學生寫對答案)

  • 程式做的事:

    1. 把使用者輸入的字串每個字元 XOR 0x42

    2. 把結果 反轉

    3. 拿去跟 "}afq{noT_SPY" 比對。

  • 核心重點:這就是一種「簡單 XOR 加密」,安全性非常低,容易被破解。

  • 因此正確答案是 (A)

 

專業補充(避免學生混淆)

  • XOR 在資訊安全裡有用,但必須配合「金鑰」才能算是真加密(例如 One-Time Pad)。

  • 這裡固定寫死 0x42,沒有金鑰概念,所以嚴格來說比較接近「混淆」。

  • 只是出題老師不會在選項寫「混淆」,所以考試用語是「簡單 XOR 加密」。

  • 關鍵區別

    • 編碼 → 方便轉換,規則公開(例如 Base64)。

    • 混淆 → 故意變形,但沒有金鑰(這題真正的性質)。

    • 加密 → 有金鑰,沒有金鑰就解不出來(AES、RSA)。

1
0