Sub-Reptício Software - Ofuscamento, Aplicação de Marcas D´Água e Resistência a Alterações para Proteção de Software

Teoria, Técnicas e Ferramentas para o Combate à Pirataria, Alterações e Engenharia Reversa Maliciosa em Software A última década viu significativos progressos no desenvolvimento de técnicas para resistência contra a pirataria e alterações de software. Estas técnicas são indispensáveis para os desenvolvedores de software que procuram proteger propriedade intelectual vital. Software Sub-reptício é o primeiro recurso abrangente e com autoridade para pesquisadores, desenvolvedores e estudantes que queiram entender estas abordagens, o nível de segurança que elas suportam e o impacto no desempenho em que elas incorrem.

PROMOÇÃO LOGITECH BEATS E OUTROS

+-

Quem viu este produto , comprou

  • Segurança e Auditoria em Sistemas de Informação - 2ª Edição

    A informação é o bem mais precioso e estratégico do século XXI. A era da informação disponibiliza este bem em um volume significativo e sem precedentes na história. A preocupação com as ameaças à confidencialidade, integridade e disponibilidade também é crescente e o assunto tem sido tratado nas reuniões dos CIOs e CSOs das grandes corporações. ... Ler mais +

    QUERO VER
  • Introdução ao Pentest - 2ª Edição

    Introdução ao Pentest irá capacitar o leitor a entender e a realizar o pentest – uma auditoria minuciosa sobre falhas e vulnerabilidades em computadores e redes – e, assim, buscar a melhor forma de solucionar os problemas encontrados. ... Ler mais +

    QUERO VER
  • Ataques de Negação de Serviço DoS e DDoS

    O Livro faz a abordagem do estudo de ataques de negação de serviço e ataques distribuídos de negação de serviço, mais conhecidos como DoS e DDoS. Segundo a empresa Arbor Networks ATLAS®, são observados mais de 1800 ataques de DoS e DDoS diariamente. Apresenta um histórico de várias formas de ataque aos sistemas de comunicação antes mesmo de a internet existir, mensurando os tipos de ataques DoS que servem como base para a compreensão dos ataques DDoS. Uma visão geral e atual dos ataques é apresentada. ... Ler mais +

    QUERO VER
  • Política de Segurança da Informação - 2ª Edição Revisada e Ampliada

    Este livro mostra, praticamente, todos os aspectos que são contemplados em uma boa Política de Segurança, assim como, soluções de excelente qualidade para cada assunto, que pode ser implementada utilizando-se o guia apresentado. São abordados assuntos como a classificação das informações, controle acesso, diretrizes de segurança, segregação de funções, backups, tratamento de incidentes, segurança lógica, física, utilização de internet, e-mail, dentre outros. Esta obra é dirigida aos Security Officers, auditores de sistemas, gestores de TI, executivos generalistas e quaisquer interessados em desvendar o tema. ... Ler mais +

    QUERO VER
  • Internet das Coisas (IoT): Segurança e Privacidade dos Dados Pessoais

    São várias as organizações que estão imbuídas com a nova dinâmica da Lei Geral de Proteção de Dados (LGPD) no Brasil, buscando toda a preparação de ajustes técnicos, legais, operacionais e de processos. Porém, são poucas as que ainda de fato estão conseguindo e têm profissionais preparados para planejar, executar, conduzir e melhorar o cenário em que se encontram, pois agora, mais do que nunca, aspectos complexos como a IoT (Internet das Coisas) estão inseridos nesse contexto. ... Ler mais +

    QUERO VER
  • TI Habilitando Negócios

    Existe um refrão exaustivamente repetido no âmbito dos negócios sobre os profissionais de tecnologia: são pessoas orientadas em demasia ao lado técnico, que não falam a língua do negócio. Nas empresas usuárias de tecnologia, o papel de TI é habilitar negócios e não existe nada que catapulte mais a carreira dos líderes de TI do que habilitar as iniciativas de vendas e marketing. ... Ler mais +

    QUERO VER
  • Contagem Regressiva até Zero Day

    R$ 104,00 ou 2x de R$ 52,00

    “Contagem Regresiva até Zero Day” abrange muito mais que o Stuxnet. Zetter nos mostra como a guerra digital se desenvolveu nos Estados Unidos. Ela nos leva para dentro do próspero “mercado cinza” de exploits zero-day, onde agências de inteligência e militares pagam enormes quantias em troca dos códigos maliciosos de que precisam para conduzir infiltrações e ataques. Ela revela o quão vulneráveis podem ser muitos dos nossos sistemas críticos face a ações semelhantes à do Stuxnet, partindo de atacantes anônimos ou nações-estado – e nos mostra o que pode acontecer caso nossa infraestrutura seja atingida por um ataque assim. ... Ler mais +

    QUERO VER

Quem viu este produto , também se interessou

  • Política de Segurança da Informação - 2ª Edição Revisada e Ampliada

    Este livro mostra, praticamente, todos os aspectos que são contemplados em uma boa Política de Segurança, assim como, soluções de excelente qualidade para cada assunto, que pode ser implementada utilizando-se o guia apresentado. São abordados assuntos como a classificação das informações, controle acesso, diretrizes de segurança, segregação de funções, backups, tratamento de incidentes, segurança lógica, física, utilização de internet, e-mail, dentre outros. Esta obra é dirigida aos Security Officers, auditores de sistemas, gestores de TI, executivos generalistas e quaisquer interessados em desvendar o tema. ... Ler mais +

    QUERO VER
  • TI Habilitando Negócios

    Existe um refrão exaustivamente repetido no âmbito dos negócios sobre os profissionais de tecnologia: são pessoas orientadas em demasia ao lado técnico, que não falam a língua do negócio. Nas empresas usuárias de tecnologia, o papel de TI é habilitar negócios e não existe nada que catapulte mais a carreira dos líderes de TI do que habilitar as iniciativas de vendas e marketing. ... Ler mais +

    QUERO VER
  • Internet das Coisas (IoT): Segurança e Privacidade dos Dados Pessoais

    São várias as organizações que estão imbuídas com a nova dinâmica da Lei Geral de Proteção de Dados (LGPD) no Brasil, buscando toda a preparação de ajustes técnicos, legais, operacionais e de processos. Porém, são poucas as que ainda de fato estão conseguindo e têm profissionais preparados para planejar, executar, conduzir e melhorar o cenário em que se encontram, pois agora, mais do que nunca, aspectos complexos como a IoT (Internet das Coisas) estão inseridos nesse contexto. ... Ler mais +

    QUERO VER
  • Segurança e Auditoria em Sistemas de Informação - 2ª Edição

    A informação é o bem mais precioso e estratégico do século XXI. A era da informação disponibiliza este bem em um volume significativo e sem precedentes na história. A preocupação com as ameaças à confidencialidade, integridade e disponibilidade também é crescente e o assunto tem sido tratado nas reuniões dos CIOs e CSOs das grandes corporações. ... Ler mais +

    QUERO VER
  • Ataques de Negação de Serviço DoS e DDoS

    O Livro faz a abordagem do estudo de ataques de negação de serviço e ataques distribuídos de negação de serviço, mais conhecidos como DoS e DDoS. Segundo a empresa Arbor Networks ATLAS®, são observados mais de 1800 ataques de DoS e DDoS diariamente. Apresenta um histórico de várias formas de ataque aos sistemas de comunicação antes mesmo de a internet existir, mensurando os tipos de ataques DoS que servem como base para a compreensão dos ataques DDoS. Uma visão geral e atual dos ataques é apresentada. ... Ler mais +

    QUERO VER
  • Contagem Regressiva até Zero Day

    R$ 104,00 ou 2x de R$ 52,00

    “Contagem Regresiva até Zero Day” abrange muito mais que o Stuxnet. Zetter nos mostra como a guerra digital se desenvolveu nos Estados Unidos. Ela nos leva para dentro do próspero “mercado cinza” de exploits zero-day, onde agências de inteligência e militares pagam enormes quantias em troca dos códigos maliciosos de que precisam para conduzir infiltrações e ataques. Ela revela o quão vulneráveis podem ser muitos dos nossos sistemas críticos face a ações semelhantes à do Stuxnet, partindo de atacantes anônimos ou nações-estado – e nos mostra o que pode acontecer caso nossa infraestrutura seja atingida por um ataque assim. ... Ler mais +

    QUERO VER
  • Introdução ao Pentest - 2ª Edição

    Introdução ao Pentest irá capacitar o leitor a entender e a realizar o pentest – uma auditoria minuciosa sobre falhas e vulnerabilidades em computadores e redes – e, assim, buscar a melhor forma de solucionar os problemas encontrados. ... Ler mais +

    QUERO VER
  • Descrição
    Sub-Reptício Software - Ofuscamento, Aplicação de Marcas D´Água e Resistência a Alterações para Proteção de Software

    Teoria, Técnicas e Ferramentas para o Combate à Pirataria, Alterações e Engenharia Reversa Maliciosa em Software A última década viu significativos progressos no desenvolvimento de técnicas para resistência contra a pirataria e alterações de software. Estas técnicas são indispensáveis para os desenvolvedores de software que procuram proteger propriedade intelectual vital. Software Sub-reptício é o primeiro recurso abrangente e com autoridade para pesquisadores, desenvolvedores e estudantes que queiram entender estas abordagens, o nível de segurança que elas suportam e o impacto no desempenho em que elas incorrem. Christian Collberg e Jasvir Nagra reúnem técnicas tiradas de áreas relacionadas com a ciência da computação, incluindo criptografia, esteganografia, aplicação de marcas d'água, métricas de software, engenharia reversa e otimização de compiladores. Usando extensivos códigos de amostra, eles mostram aos leitores como implementar esquemas de proteção que vão do ofuscamento de código à resistência a alterações e marcas de nascença e discutem as limitações teóricas e práticas destas técnicas
  • Sobre o Autor
  • Especificação

    Características

    Tipo de LivroLivro Físico

    Especificações

    Sobre o AutorChristian Collberg
    Christian Collberg, professor associado de Ciência da computação na Universidade do Arizona, fez pesquisas fundamentais em ofuscamento de código, aplicação de marcas d’água e de nascença em software. Recebeu seu Ph.D. em Ciência da computação da Universidade de Lund, Suécia, e também trabalhou na Universidade de Auckland, Nova Zelândia, e na Academia Chinesa de Ciências, em Beijin, China.



    Jasvir Nagra
    Jasvir Nagra, tem interesse no projeto de fortes algoritmos de aplicação dinâmica de marcas d'água e trabalhou na aplicação de ofuscamento e resistência a alterações para proteção da integridade de software em execução em plataformas remotas, não confiáveis. Atualmente, trabalha em segurança baseada em linguagens de programação, no Google, na Califórnia
    Informações Técnicas Sumário

    Prefácio - XXIII
    Sobre os autores - XXXIII
    Agradecimentos - XXXV
    Capítulo 1 Que é software sub-reptício? - 3

    1.1 Definindo o cenário - 3
    1.2 Ataque e defesa - 8
    1.3 Análise de programas - 9
    1.3.1 Exemplo simples de engenharia reversa - 11
    1.4 Ofuscamento de código - 15
    1.4.1 Aplicações do ofuscamento de código - 18
    1.4.1.1 Engenharia reversa maliciosa - 18
    1.4.1.2 Gerenciamento de direitos digitais - 19
    1.4.1.3 Computação de agente móvel - 20
    1.4.1.4 Computação em grade - 21
    1.4.1.5 Diversidade artificial - 22
    1.4.2 Transformações de ofuscamento - 23
    1.4.3 Ofuscamento de código de chapéu preto - 28
    1.4.3.1 Desvio de alvo - ofuscamento invisível - 29
    1.4.3.2 Ofuscamento de vírus - 32
    1.5 Resistência a alterações - 35
    1.5.1 Aplicações da resistência a alterações - 36
    1.5.2 Um exemplo - 38 1.6 Marca d’água de software - 39
    1.6.1 Um exemplo - 42
    1.6.2 Ataques em sistemas de marca d’água - 44
    1.7 Similaridade de software - 46
    1.7.1 Plágio - 46
    1.7.2 Investigação de Software - 48
    1.7.3 Sinais de nascença - 49
    1.7.4 Um exemplo de sinal de nascença - 50
    1.8 Técnicas de proteção baseadas em Hardware - 53
    1.8.1 Distribuição com identificador físico - 53
    1.8.2 Amarração do programa à CPU - 54
    1.8.3 Assegurando um ambiente de execução segura - 55
    1.8.4 Execução encriptada - 56 1.8.5 Barreiras físicas - 57 1.9 Discussão - 59
    1.9.1 Razões para usar a proteção de software... - 59
    1.9.2 ... e razões para não usá-la - 60
    1.9.3 Então, quais algoritmos devo usar? - 61
    1.10 Notação - 62

    Capítulo 2 Métodos de ataque e defesa - 63
    2.1 Estratégias de ataque - 64
    2.1.1 Um alvo prototípico de craqueamento - 65
    2.1.2 Qual é a motivação do adversário? - 67
    2.1.3 O que o adversário procura craquear? - 70
    2.1.3.1 Estático versus Dinâmico e Estripado versus Não estripado - 71
    2.1.3.2 Formatos de distribuição independentes de arquitetura - 72
    2.1.4 Qual a metodologia do ataque do adversário? - 73
    2.1.4.1 Análise dinâmica - craqueamento versus depuração - 74
    2.1.4.2 Análise dinâmica - explorando falhas na caixa preta - 75
    2.1.4.3 Análise estática - 76
    2.1.4.4 Edição - 76 2.1.4.5 Automação - 77
    2.1.5 Que ferramentas o adversário utiliza? - 77
    2.1.6 Quais técnicas o adversário utiliza? - 78
    2.1.6.1 Conhecendo o executável - 78
    2.1.6.2 Interrupção em funções de biblioteca - 79
    2.1.6.3 Correspondência de padrões estáticos - 80
    2.1.6.4 Observando a memória - 81
    2.1.6.5 Recuperando dados internos - 83
    2.1.6.6 Mexendo com o ambiente - 84
    2.1.6.7 Correspondência de padrões dinâmica - 85
    2.1.6.8 Ataques diferenciais - 86
    2.1.6.9 Recuperando algoritmos através da descompilação - 87
    2.1.7 Discussão - 88
    2.2 Estratégias de defesa - 92
    2.2.1 Notação - 93
    2.2.2 A primitiva cobertura - 96
    2.2.3 A primitiva duplicata - 99
    2.2.4 As primitivas divisão e combinação - 102
    2.2.5 A primitiva reordenação - 106
    2.2.6 A primitiva mapeamento - 107
    2.2.7 A primitiva indireta - 110
    2.2.8 A primitiva mímica - 112
    2.2.9 A primitiva anúncio - 114
    2.2.10 A primitiva detecção-resposta - 116
    2.2.11 A primitiva dinâmica - 118
    2.2.12 Discussão - 120
    2.3 Discussão - 121
    2.3.1 O que precisamos dos modelos de ataque e defesa? - 121
    2.3.2 Como usamos os modelos para divisar algoritmos? - 122

    Capítulo 3 Análise do programa - 123
    3.1 Análise estática - 124
    3.1.1 Análise do fluxo de controle - 125
    3.1.1.1 Lidando com exceções - 127
    3.1.1.2 Algoritmo REAMB: lidando com código automodificável - 129
    3.1.1.3 Identificando laços - 131
    3.1.1.4 Fluxo de controle interprocedimental - 132
    3.1.2 Análise de fluxo de dados - 134
    3.1.3 Análise de dependência de dados - 139
    3.1.4 Análise de apelidos - 141
    3.1.4.1 Onde ocorre a formação de apelidos? - 141
    3.1.4.2 Classificação de problemas de análise de apelidos - 143
    3.1.4.3 Algoritmos de análise de apelidos - 145
    3.1.5 Fatiamento - 149 3.1.6 Interpretação abstrata - 150
    3.2 Análise dinâmica - 152 3.2.1 Depuração - 153
    3.2.1.1 Pontos de interrupção por software versus por hardware - 154
    3.2.1.2 Algoritmo REBB: depuração reversa - 159
    3.2.1.3 Depuração relativa - 165
    3.2.2 Traçado de perfil - 168
    3.2.2.1 Implementação do perfilador - 169
    3.2.3 Rastreamento - 170
    3.2.3.1 O algoritmo RELJ: comprimindo traçados - 171
    3.2.4 Simulação - 175 3.3 Reconstituindo a fonte - 177
    3.3.1 Desmontagem - 180 3.3.1.1 Travessia linear versus recursiva - 181
    3.3.1.2 O algoritmo REHM: Desmontando binários estripados - 185
    3.3.2 Descompilação - 187
    3.3.2.1 O algoritmo RECG: recuperando o fluxo de controle de alto nível - 190
    3.3.2.2 Descompilando linguagens de alto nível - 195
    3.4 Análise pragmática - 197
    3.4.1 Métricas de estilo - 198
    3.4.2 Métricas de complexidade de software - 201
    3.4.3 Visualização de software - 203 3.5 Discussão - 206

    Capítulo 4 Ofuscamento de Código - 209
    4.1 Transformações de ofuscamento que preservam a semântica - 210
    4.1.1 O algoritmo OBFCF: transformações de diversificação - 211
    4.1.1.1 Equivalência de expressões - 212
    4.1.1.2 O algoritmo OBFCFreordena: reordenando código e dados - 212
    4.1.1.3 O algoritmo OBFCFinexlinha: dividindo e combinando funções - 213
    4.1.1.4 O algoritmo OBFCFcopia: copiando código - 214
    4.1.1.5 O algoritmo OBFCFinterp: interpretação - 215
    4.1.2 O algoritmo OBFTP: renomeação de identificador - 217
    4.1.3 Executivas de ofuscamento - 220
    4.1.3.1 O algoritmo OBFCTJEO: maximizando o benefício pelo custo - 221
    4.1.3.2 O algoritmo OBFHC: modelando dependências - 222
    4.2 Definições - 225
    4.2.1 Transformações potentes de ofuscamento - 228
    4.2.2 Transformações eficazes de ofuscamento - 231
    4.2.3 Invisibilidade - 231
    4.2.4 Outras definições - 233
    4.3 Complicando o fluxo de controle - 234
    4.3.1 Expressões opacas - 234
    4.3.2 O algoritmo OBFWHKD: achatando o fluxo de controle - 235
    4.3.3 Introduzindo apelidos - 238
    4.3.3.1 O algoritmo OBFCTJapelido: adicionando apelidos espúrios - 239
    4.3.3.2 O algoritmo OBFWHKDapelido: achatamento do fluxo de controle - parte 2 - 240
    4.3.4 O algoritmo OBFCTJinócuo: inserindo fluxos de controle fictícios - 244
    4.3.4.1 Diagramas irredutíveis - 246
    4.3.4.2 Predicados opacos mutuamente dependentes - 247
    4.3.5 O algoritmo OBFLDK: saltos através de funções de desvio - 248
    4.3.6 Ataques - 251
    4.3.6.1 O algoritmo REUDM: ataques dinâmicos contra o achatamento do fluxo de controle - 252
    4.3.6.2 O algoritmo REMASB: ataques dinâmicos contra funções de desvio - 255
    4.4 Predicados opacos - 256
    4.4.1 O algoritmo OBFCTJponteiro: predicados opacos a partir de apelidos de ponteiros - 257
    4.4.2 OBFWHKDopaco: valores opacos a partir do uso de apelidos de matriz - 260
    4.4.3 O algoritmo OBFCTJsegmento: predicados opacos a partir de concorrência - 262
    4.4.4 Quebrando predicados opacos - 264
    4.4.4.1 O algoritmo REPMBG: quebrando - 266
    4.4.4.2 O algoritmo OBFCTJfatia: impedindo ataques de fatiamento - 268
    4.5 Codificações de dados - 269 4.5.1 Codificando inteiros - 272
    4.5.1.1 O algoritmo OBFBDKMRVnum: truques da teoria dos números - 273
    4.5.1.2 O algoritmo OBFBDKMRVcripto: encriptando inteiros - 274
    4.5.2 Codificando booleanos - 277
    4.5.2.1 O algoritmo OBFBDKMRVbool [28]: valores múltiplos - 278
    4.5.2.2 O algoritmo OBFCTJbool: dividindo booleanos - 278
    4.5.3 Codificação de dados literais - 280
    4.5.4 Codificando matrizes - 282
    4.5.4.1 O algoritmo OBFZCW: permutação de matrizes - 282
    4.5.4.2 O algoritmo OBFCTJmatriz: reestruturando matrizes - 284
    4.6 Quebrando abstrações - 287
    4.6.1 O algoritmo OBFWCassina: combinando assinaturas de funções - 287
    4.6.2 O algoritmo OBFCTJclasse: dividindo e combinando classes - 290
    4.6.3 O algoritmo OBFDMRVSL: destruindo estruturas de alto nível - 292
    4.6.3.1 Um exemplo - 295
    4.6.3.2 Avaliação - 302
    4.6.4 O algoritmo OBFAJV: modificando as codificações de instruções - 303
    4.7 Discussão - 308

    Capítulo 5 Teoria do Ofuscamento - 311
    5.1 Definições - 315
    5.2 Ofuscamento provadamente seguro: possível ou impossível? - 317
    5.2.1 O problema da parada de Turing - 318
    5.2.2 O algoritmo REAA: programas desofuscadores - 322
    5.3 Ofuscamento provadamente seguro: é possível (às vezes)! - 324
    5.3.1 O algoritmo OBFLBS: ofuscamento com funções pontuais - 325
    5.3.1.1 Ofuscamento do controle de acesso - 328
    5.3.1.2 Ofuscamento de expressões regulares - 331
    5.3.2 O algoritmo OBFNS: ofuscamento de bases de dados - 333
    5.3.3 O algoritmo OBFPP: encriptação homomórfica - 335
    5.3.4 O algoritmo OBFCEJO: DES caixa branca - 340
    5.3.4.1 DES tradicional - 342
    5.3.4.2 Ofuscamento de DES - 344
    5.4 Ofuscamento provadamente seguro: é impossível (às vezes)! - 347
    5.4.1 Um ofuscador geral - 348
    5.4.2 Funções apreensíveis de ofuscamento - 352
    5.4.3 Provando que o ofuscamento é impossível - 353
    5.4.4 Discussão - 355
    5.5 Ofuscamento provadamente seguro: pode ser salvo? - 357
    5.5.1 Superando a impossibilidade - 358
    5.5.2 Definições revistas: tornar interativo o ofuscamento - 359
    5.5.2.1 O problema do avaro - 360
    5.5.2.2 O problema do milionário - 361
    5.5.3 Definição revista: tornar o ofuscamento não preservador de semântica - 362
    5.5.3.1 Chamada a procedimento remoto - 364
    5.5.3.2 Execução caixa branca de programa remoto - 365
    5.6 Discussão - 367

    Capítulo 6 Ofuscamento Dinâmico - 369
    6.1 Definições - 372
    6.2 Movendo o código - 373
    6.2.1 O algoritmo OBFKMNM: substituindo instruções - 374
    6.2.2 OBFAGtroca: máquina de estado automodificável - 378
    6.2.2.1 Construindo a máquina de estado - 381
    6.2.2.2 Execução de exemplo - 387
    6.2.2.3 Codificando o exemplo - 388
    6.2.3 OBFMAMDSB: combinação dinâmica de código - 388
    6.3 Encriptação - 396
    6.3.1 OBFCKSP: código como material de chave - 397
    6.3.2 OBFAGcript: combinando automodificação e encriptação - 405
    6.3.2.1 Um exemplo - 406
    6.3.2.2 Derivando o fluxo da chave - 407
    6.3.2.3 Codificando o exemplo - 410
    6.4 Discussão - 412

    Capítulo 7 Resistência a alterações em Software - 415
    7.1 Definições - 419
    7.1.1 Verificando alterações - 420
    7.1.2 Respondendo a alterações - 424
    7.1.3 Projeto do sistema - 425
    7.2 Introspecção - 426
    7.2.1 O algoritmo TPCA: rede de verificadores - 428
    7.2.2 Gerando funções de extrato - 432
    7.2.3 O algoritmo TPHMST: ocultando valores de extrato - 437
    7.2.3.1 Desenho do sistema - 438
    7.2.3.2 Construção de intervalos - 440
    7.2.3.3 Computando valores de encaixe de corretores - 443
    7.2.4 O protocolo ofuscado do Skype - 445
    7.2.4.1 O algoritmo REBD: atacando o cliente Skype - 448
    7.2.5 O algoritmo REWOS: atacando algoritmos produtores de autoextrato - 449
    7.2.5.1 O algoritmo TPGCK: detectando divisões de memória - 452
    7.2.6 Discussão - 453
    7.3 O algoritmo RETCJ: mecanismos de resposta - 455
    7.4 Inspeção de estado - 459
    7.4.1 O algoritmo TPCVCPSJ: funções de extrato inconscientes - 462
    7.4.2 O algoritmo TPJJV: sobrepondo instruções - 465
    7.5 Resistência remota a alterações - 468
    7.5.1 Verificação e resposta distribuída - 469
    7.5.2 Estratégias de solução - 470
    7.5.3 O algoritmo TPZG: funções de fatiamento - 471
    7.5.4 O algoritmo TPSLSPDK: medindo hardware remoto - 474
    7.5.4.1 Aplicações - 475
    7.5.4.2 O protocolo Pioneer - 476
    7.5.5 TPCNS: substituição contínua - 477
    7.6 Discussão - 480

    Capítulo 8 Marca d’água em Software - 483
    8.1 História e aplicações - 484
    8.1.1 Aplicações - 484
    8.1.1.1 Marcas visíveis e invisíveis - 485
    8.1.1.2 Marcas rogustas e frágeis - 485
    8.1.1.3 Marcas autorais - 486
    8.1.1.4 Marcas de impressão digital - 487
    8.1.1.5 Marcas de licença - 487
    8.1.1.6 Marcas de meta-dados - 488
    8.1.1.7 Marcas de validação - 488
    8.1.1.8 Marcas de filtragem - 488
    8.1.1.9 Marcas secretas - 488
    8.1.1.10 Marcas autorais não intencionais - 489
    8.1.2 Embutindo uma marca em áudio - 489
    8.1.3 Embutindo uma marca numa imagem - 491
    8.1.4 Embutindo uma marca num texto em linguagem natural - 492
    8.2 Aplicação de marca d’água em software - 495
    8.3 Definições - 497
    8.3.1 Credibilidade da marca d’água - 498
    8.3.2 Ataques - 500
    8.3.3 Aplicação de marca d’água e de impressão digital - 502
    8.4 Aplicação de marca d’água por permutação - 503
    8.4.1 O algoritmo WMDM: reordenando blocos básicos - 505
    8.4.2 Re-enumeração - 507
    8.4.3 O algoritmo WMQP: melhorando a credibilidade - 508
    8.5 Tornando as marcas d’água resistentes a alterações - 512
    8.5.1 O algoritmo WMMC: embutindo marcas d’água de média - 512
    8.6 Melhorando a resiliência - 516
    8.6.1 O algoritmo WMSHKQ: aplicação estatística de marcas d’água - 516
    8.6.1.1 Embutindo - 517 8.6.1.2 Reconhecimento - 520
    8.6.1.3 Discussão - 522 8.7 Melhorando a invisibilidade - 523
    8.7.1 O algoritmo WMMIMIT: mapeando instruções - 523
    8.7.2 O algoritmo WMVVS: marcas d’água em diagramas de controle de fluxo (CFGs) - 524
    8.7.2.1 Embutindo - 526
    8.7.2.2 Reconhecimento - 532
    8.7.2.3 Discussão - 533
    8.7.3 O algoritmo WMCC: interpretação abstrata - 534
    8.7.3.1 Embutindo - 535
    8.7.3.2 Reconhecimento - 537
    8.7.3.3 Discussão - 538
    8.8 Embutimentos esteganográficos - 539
    8.8.1 O algoritmo WMASB: o compilador como embutidor - 540
    8.8.1.1 Embutimento - 541
    8.8.1.2 Reconhecimento - 543
    8.8.1.3 Discussão - 544
    8.9 Dividindo inteiros de marca d’água - 545
    8.9.1 Dividindo uma marca grande em partes menores - 545
    8.9.2 Partes redundantes de marca d’água - 546
    8.9.2.1 Eliminando partes fictícias - 549
    8.9.3 Códigos esparsos para aumento da credibilidade - 550
    8.10 Codecs de diagramas - 553
    8.10.1 Árvore pai-ponteiro orientada - 553
    8.10.2 Diagramas de base - 554
    8.10.3 Diagramas de permutação - 554
    8.10.4 Árvores cúbicas de plano plantado - 555
    8.10.5 Diagramas de permutação redutível - 556
    8.11 Discussão - 557
    8.11.1 Técnicas de embutimento - 558
    8.11.2 Modelos de ataque - 559

    Capítulo 9 Marca d’água Dinâmica - 561
    9.1 O algoritmo WMCT: explorando apelidos - 566
    9.1.1 Um exemplo simples - 567
    9.1.2 Problemas de reconhecimento - 569
    9.1.3 Aumentando a taxa de bits - 572
    9.1.3.1 Escolhendo uma codificação eficaz de diagramas - 573
    9.1.3.2 Gerando código minimalista - 574
    9.1.3.3 Aumentando a invisibilidade e a taxa de bits pela divisão do diagrama - 575
    9.1.4 Aumentando a resiliência a ataques - 577
    9.1.4.1 Protegendo contra inversões de vínculos - 578
    9.1.4.2 Protegendo contra a divisão de nós - 579
    9.1.4.3 Protegendo contra a análise de apelidos - 581
    9.1.5 Aumentando a invisibilidade - 582
    9.1.5.1 Evitando variáveis globais - 582
    9.1.5.2 Evitando classes de nós não invisíveis - 583
    9.1.5.3 Evitando cortes fracos - 584
    9.1.6 Discussão - 585
    9.2 O algoritmo WMNT: explorando o paralelismo - 586
    9.2.1 Embutindo widgets de marca d’água - 590
    9.2.2 Exemplo de embutimento - 595
    9.2.3 Reconhecimento - 598
    9.2.4 Evitando ataques de correspondência de padrões - 600
    9.2.5 Tornando os Widgets resistentes a alterações - 601
    9.2.6 Discussão - 603
    9.3 O algoritmo WMCCDKHLScaminhos: Expandindo os caminhos de execução - 605
    9.3.1 Codificando e embutindo - 606
    9.3.2 Reconhecimento - 612
    9.3.3 Discussão - 612
    9.4 O algoritmo WMCCDKHLSbf: tornando os caminhos de execução resistentes a alterações - 614
    9.4.1 Embutindo - 615
    9.4.2 Reconhecimento - 617
    9.4.3 Tornando os desvios resistentes a alterações - 618
    9.4.4 Discussão - 620
    9.5 Discussão - 621

    Capítulo 10 Análise de Similaridade de Software - 625
    10.1 Aplicações - 626
    10.1.1 Detecção de clones - 627
    10.1.2 Investigação de software - 629
    10.1.3 Detecção de plágios - 633
    10.1.4 Detecção de marcas de nascença - 635
    10.2 Definições - 636
    10.2.1 Medidas de similaridade - 637
    10.2.1.1 Similaridade de sequências - 638
    10.2.1.2 Similaridade de conjuntos - 639
    10.2.1.3 Similaridade de diagramas - 640
    10.3 Análise baseada em k-grama - 641
    10.3.1 SSSWAPENEIRA: selecionando extratos de k-grama - 642
    10.3.2 SSSWAMOSS: detecção de plágio de software - 645
    10.3.2.1 Exemplo - código fonte - 647
    10.3.3 SSMCkgrama: k-gram de marcas de nascença de Bytecode Java - 648
    10.4 Análise baseada em API - 651
    10.4.1 SSTNMM: marcas de nascença de orientação por objetos - 652
    10.4.2 SSTONMM: marcas de nascença de chamadas dinâmicas a funções - 654
    10.4.3 SSSDL: marcas de nascença por k-grama dinâmica de API - 656
    10.5 Análise baseada em árvores - 657
    10.5.1 SSEFM: detecção de clones com base em ASTs - 657
    10.6 Análise baseada em diagramas - 661
    10.6.1 SSKH: detecção de clones baseada em PDG - 662
    10.6.2 SSLCHY: detecção de plágios baseada em PDG - 666
    10.6.3 SSMCwpp: marcas de nascença dinâmicas de um programa inteiro - 667
    10.7 Análise baseada em métricas - 670
    10.7.1 SSKK: detecção de clones com base em métricas - 671
    10.7.2 SSLM: Análise de autoria baseada em métricas - 672
    10.7.2.1 Classificação usando histogramas - 674
    10.7.2.2 Selecionando as métricas corretas - 675
    10.8 Discussão - 679

    Capítulo 11 Hardware para Proteção de Software - 681
    11.1 Distribuição física anti-pirataria - 683
    11.1.1 Proteção de disco de distribuição - 684
    11.1.1.1 Proteção de CD de áudio - 684
    11.1.1.2 Proteção de CD-ROM - 686
    11.1.1.3 Proteção de disquetes - 687
    11.1.1.4 Proteção de filmes em DVD - 687
    11.1.1.5 Proteção de filmes de alta definição - 690
    11.1.2 Dongles - 691
    11.1.2.1 Uma típica API de Dongle - 691
    11.1.2.2 Atacando Dongles - 695
    11.2 Inicialização autenticada, usando um módulo de plataforma confiável - 696
    11.2.1 Inicialização confiável - 697
    11.2.2 Tirando medidas - 700
    11.2.3 O TPM - 702
    11.2.4 O questionamento - 703
    11.2.5 Questões de privacidade e confiança social - 706
    11.2.6 Aplicações e controvérsias - 708
    11.3 Execução encriptada - 710
    11.3.1 A arquitetura XOM - 712
    11.3.1.1 Modificações ISA - 714
    11.3.2 Prevenindo ataques de repetição - 716
    11.3.3 Corrigindo um barramento de endereços vazante - 718
    11.3.4 Corrigindo um barramento de dados vazante - 722
    11.3.5 Discussão - 722
    11.4 Ataques a dispositivos resistentes a alterações - 723
    11.4.1 Drenando o barramento - a mexida no XBOX da Microsoft - 724
    11.4.2 Injetando cifras - o DS5002FP da Dallas Semiconductor - 726
    11.4.3 Mexendo com Smartcards - 729
    11.4.3.1 Ataques invasivos - 731
    11.4.4 Ataques não invasivos - 734
    11.4.4.1 Ataques de indução a falhas - 734
    11.4.4.2 Ataques de temporização - 735
    11.4.4.3 Ataques de análise de alimentação - 736
    11.4.4.4 Contramedidas - 736
    11.4.5 Proteção a nível de placa - 737
    11.5 Discussão - 740

    Bibliografia - 743

    Índice Remissivo - 781

    Informações Técnicas

    Nº de páginas:832
    Origem:Importado
    Editora:Editora Ciência Moderna
    Idioma:Português
    Edição:1ª Edição
    Ano:2010
    ISBN:9788573939118
    Encadernação:Brochura
    Autor:Christian Collberg , Jasvir Nagra
  • Informações

Avaliação técnica sobre o livro

Olá! Seja Bem Vindo (a)!

Eu sou o Moderninho , o Mascote da Ciência Moderna Online!
Além de bonito, o novo site tem Minhas Dicas :) #ficaadica

A 1ª Dica é -> Deixe aqui seu contato para receber nossas
NOVIDADES, PROMOÇÕES E CUPONS DE DESCONTOS ;)

Navegue SEM Moderação!