====== 課程講義 ====== [[https://www.dropbox.com/s/7ztmvjjipp1u0ww/Swift_Lesson9_Security_20210418-1_AI_Network.pdf?dl=0|下載連結]] ====== 網路安全練習主機與電文資訊 ====== 主機URL: "http://class.softarts.cc/AppSecurity/encryptData.json" Payload 加密 Key: "zaq1xsw2cde3vfr4" Password 加密 Key Prefix: "1qaz2wsx" ===== Exception Domains 設定 Key 值 ===== NSExceptionAllowsInsecureHTTPLoads NSIncludesSubdomains ==== SSL Pinning ==== [[https://www.ssllabs.com/ssltest/index.html |SSLLabs]] ==== 假 Pinning Hash ==== "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=", "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB=" ==== UIWindow+Extension.swift 預設內容 ==== [[https://www.dropbox.com/s/qw438cha0wnuwf5/UIWindow%2BExtension.swift?dl=0|UIWindow+Extension.swift]] ==== main.swift 預設內容 ==== import Foundation import UIKit autoreleasepool { UIApplicationMain( CommandLine.argc, UnsafeMutableRawPointer(CommandLine.unsafeArgv) .bindMemory( to: UnsafeMutablePointer.self, capacity: Int(CommandLine.argc)), nil, NSStringFromClass(AppDelegate.self) //Or your class name ) } ==== Objective-C 混淆方式參考 ==== [[https://github.com/kaich/codeobscure|codeobscure]] [[https://github.com/kongcup/ZMConfuse|ZMConfuse]] ==== Swift Jailbreak 偵測 ==== [[https://github.com/TheSwiftyCoder/JailBreak-Detection|JailBreak-Detection]] ==== TouchID/FaceID 範例程式 ==== [[https://www.dropbox.com/s/k1bc1lcmxo522zc/SwiftHelloLocalAuthentication.zip?dl=0|SwiftHelloLocalAuthentication.zip]]