MASTG-TEST-0083: Teste para Debugging Symbols
Deprecated Test
This test is deprecated and should not be used anymore. Reason: New version available in MASTG V2
Please check the following MASTG v2 tests that cover this v1 test:
Visão Geral¶
Análise Estática¶
Para verificar a existência de símbolos de depuração, você pode usar o objdump do binutils ou llvm-objdump para inspecionar todos os binários do aplicativo.
No trecho a seguir, executamos o objdump sobre TargetApp (o executável principal do app iOS) para mostrar a saída típica de um binário contendo símbolos de depuração, que são marcados com o flag d (debug). Consulte a página do manual do objdump para obter informações sobre vários outros caracteres de flag de símbolo.
$ objdump --syms TargetApp
0000000100007dc8 l d *UND* -[ViewController handleSubmitButton:]
000000010000809c l d *UND* -[ViewController touchesBegan:withEvent:]
0000000100008158 l d *UND* -[ViewController viewDidLoad]
...
000000010000916c l d *UND* _disable_gdb
00000001000091d8 l d *UND* _detect_injected_dylds
00000001000092a4 l d *UND* _isDebugged
...
Para evitar a inclusão de símbolos de depuração, defina Strip Debug Symbols During Copy como YES nas configurações de build do projeto do XCode. Remover os símbolos de depuração não apenas reduzirá o tamanho do binário, mas também aumentará a dificuldade de engenharia reversa.
Análise Dinâmica¶
A análise dinâmica não é aplicável para encontrar símbolos de depuração.