segunda-feira, 21 de março de 2022

O básico da rede SOHO (Small Office Home Office)

Introdução

As redes de computadores permitem que os dispositivos eletrônicos se comuniquem uns com os outros e compartilhem recursos.


A interconexão entre os equipamentos ocorre, normalmente,  por cabos de cobre, cabos de fibra óptica ou rádio (wireless).


As regras e requisitos para que a comunicação se estabeleça são conhecidos como protocolos, dos quais o IP (Internet Protocol) é exemplo.


Podemos pensar numa rede interna básica de pequeno porte (SOHO ou Small Office Home Office) constituída por:

  1. um roteador, que reúne os serviços de:

    1. conexão externa (para a Internet), que usa o endereço IP atribuído pelo provedor de internet (ISP ou Internet Service Provider), ao qual está conectado;

    2. uma conexão interna (ou placa de rede), com um endereço privado (normalmente 192.168.1.1);

    3. DHCP (Dynamic Host Configuration Protocol), que faz a configuração automática dos hosts;

    4. Firewall básico;

    5. DNS (Domain Name Service), que resolve (traduz) os endereços IP para torná-los mais adequados aos usuários.  

  2. computador A;

  3. computador B.


Endereços privados

Quando se olha para os dispositivos da rede interna, vê-se que possuem endereços privados (ou IPs privados), que foram configurados manualmente ou pelo DHCP. 


Esses endereços privados (que se repetem em outras redes) não se comunicam com a Internet. São rejeitados pelos demais roteadores.


É aí que entra o NAT (Network Address Translation), também conhecido como masquerading, que é uma função do roteador que converte os endereços privados dos computadores A e B (da rede interna) em endereços válidos para a Internet.


Gateway default

Roteadores possuem um caminho para que as redes internas possam "sair" para a Internet, que é conhecido como Gateway default. Funciona como a única estrada que serve para sair de uma cidadezinha.






Referência:

BROAD, James e BINDER, Andrew. Hacking com Kali Linux: técnicas práticas para testes de invasão. São Paulo: Novatec, 2014, p. 61-66.


segunda-feira, 24 de janeiro de 2022

O Menino da Internet

No último fim de semana, assisti ao documentário "O Menino da Internet: a história de Aaron Swartz" (The Internet's Own Boy: The Story of Aaron Swartz, 2014), distribuído pela Filmbuff e Participant Media, e que está disponível em vários canais do YouTube, inclusive com legenda. Trata-se da biografia do hackativista americano Aaron Swartz (1986-2013), co-criador do RSS, da linguagem de marcação Markdown (uso bastante...), das licenças Creative Commons (CC), do framework Web.py e da Reddit. 


A produção realça o empenho de Aaron em compartilhar artigos da revista científica JSTOR, de acesso restrito, que ele obtinha rodando um script feito em Python (o keepgrabbing.py) nos computadores do MIT.


O documentário também interessa aos operadores do Direito, porque mostra bastidores dos acordos de colaboração premiada, já que o FBI pretendia enquadrar Swartz na Lei de Fraude e Abuso de Computadores (Computer Fraud and Abuse Act - CFAA), com previsão de penas altíssimas.


Nesse ponto, a curiosidade fica por conta da participação de Quinn Norton, uma ex-namorada de Aaron e co-autora do Guerilla Open Access Manifesto (vale a pena pesquisar sobre o tema), falando do seu dia de rainha (Queen for a day), ou seja, da ocasião em que o Promotor e o suspeito tentam acordar os termos da delação e que, por razões ético-processuais, se garante à parte que o conversado não será usado contra ela caso o ajuste não seja concretizado. 


____________


Observações:


1. O promotor de justiça do MPSP Cleber Masson explica, em menos de 5 minutos, de que se trata o "Queen for a day". Cf. em: <https://www.youtube.com/watch?v=jGZuJHtfzmE>. Acesso em 24 jan. 2022.


2. O código-fonte do keepgrabbing.py pode ser facilmente encontrado. A título de exemplo, com explicações: AKMUT, Camille. Aaron Swartz’s JSTOR Code : Keepgrabbing.py. Further Research Notes. OSF Preprints. 2019. Disponível em: <https://osf.io/bnd2h>. Acesso em 24 jan. 2022.

domingo, 23 de janeiro de 2022

Instalação do MySQL no MacOS

 A instalação do MySQL no Mac deve ser feita via Terminal, usando a linha de comando:

brew install mysql


Para que tudo funcione bem, dois outros comandos devem ser dados previamente:


sudo chown -R $(whoami) /usr/local/share/man    /usr/local/share/man/man1              


e


chmod u+w /usr/local/share/man /usr/local/share/man/man1


O primeiro comando faz de você o “proprietário” (owner) dos diretórios man e man/man1. O segundo comando lhe dá permissão de escrita nesses diretórios.


Após a instalação, pode ser necessários inicializar o serviço com:


brew services start mysql


Para iterar com o shell do MySQL:


mysql -u root -p


Obs. O comando brew invoca o gerenciador de pacotes Homebrew. É um software não nativo do S.O., de código aberto e muito popular. Cf. em: <https://brew.sh/>





quarta-feira, 6 de outubro de 2021

Marco Legal da Inteligência Artificial


A Câmara dos Deputados aprovou, no dia 29 p.p., o PL 21/2020, do Dep. Eduardo Bismark, que “estabelece fundamentos, princípios e diretrizes para o desenvolvimento e a aplicação da inteligência artificial no Brasil e dá outras providências”. O projeto seguiu para o Senado Federal.

Para contribuir com as discussões sobre as regras propostas, publiquei no GitHub uma versão on line do meu ebook. 

Confira em: https://jespimentel.github.io/direito_e_etica_ia/


quinta-feira, 16 de setembro de 2021

Python, IA e eSAJ: transcrição de audiências judiciais

Juízes, Promotores de Justiça e Advogados podem ser mais produtivos se, ao invés de reproduzirem o vídeo da audiência judicial baixado do e-SAJ (normalmente do tipo “asf”), consultarem um arquivo texto (“txt”) contendo a transcrição das falas feita por inteligência artificial.

No programa abaixo, escrito em Python, são gerados arquivos “wav” a partir do arquivo “asf” da audiência. Esses arquivos são transcritos, um a um, pelas “inteligências artificiais” do Google e da IBM e os resultados são reunidos num único documento, como mostra o tutorial que segue.


Tutorial: 

YouTube


Código da aplicação no GitHub: 

https://github.com/jespimentel/AudiPy

quinta-feira, 15 de julho de 2021

Curiosidades do @mpsp_oficial no Twitter

O MPSP está firme e forte no Twitter, inclusive interagindo com o público.

A análise automatizada dos 3000 últimos tweets do @mpsp_oficial (que abrangeu o período de 09/11/2018 a 14/07/2021) revela:

O tweet mais curtido (284 likes): #MPSPcontraCovid Prefeito de Mirandópolis é multado por ilegalidades no combate à pandemia, após ação do Ministério Público. A mesma decisão revogou o Decreto Municipal que autorizava abertura do comércio em geral, com afrontamentos ao Plano São Paulo. https://t.co/o0S2E1ag1X

O tweet mais compartilhado (171 vezes): #PLdaImpunidadeNÃO O texto do PL que afrouxa a Lei de Improbidade Administrativa foi protocolado ontem à tarde e, na sequência, teve seu requerimento de urgência aprovado para ser votado hj na Câmara. Sem diálogo c/ instituições ou sociedade. O projeto 👉 https://t.co/vvyzcPBCbC

O MP respondeu diretamente pelo Twitter a 89 pessoas (excluídas as respostas ao próprio @mpsp_oficial).

Os dois meses de maior atividade no Twitter foram março e abril de 2020 (214 e 218 tweets respectivamente).







Quando o dataset é cortado para o período da atual gestão (Dr. Sarrubbo), o WordCloud (gráfico hierarquizado pelas palavras de maior frequência, excluídas as “stopwords”) dos tweets tem a forma que segue (a plotagem não tem edição):








-------

Obs.:

Toda a análise foi feita em Python e sem ajustes manuais (salvo adição de “stopwords”).

O código e arquivos gerados durante o processamento estão disponíveis em repositório público (GitHub) para permitir outras análises aos interessados.

Cf. em: 

https://github.com/jespimentel/mpsp_no_twitter


terça-feira, 9 de março de 2021

Cibercrime na atualidade


Os crimes cibernéticos sempre estiveram associados a hackers (ou melhor, a crackers), pessoas com conhecimento diferenciado em tecnologia. No imaginário popular, tais atores consumiam considerável tempo de suas existências estudando arquiteturas de hardware ou sistemas com o objetivo de encontrar vulnerabilidades e explorá-las em seus ataques. Movia-os o desafio ou a diversão.

Na atualidade, todavia, não se exige o tal conhecimento para a prática do cibercrime, que, por sinal, tem atraído muita gente pelo potencial de lucro e anonimato.

Diversas ferramentas têm sido oferecidas no mercado clandestino para a realização de ataques por leigos. Algumas consistem em softwares bastante amigáveis e de fácil uso. Muitas delas procuram suas vítimas de forma automatizada, o que acarreta um problema adicional à segurança cibernética.

De fato, o escaneamento de vítimas potenciais aumenta a distância psicológica entre autor e ofendido, mitigando o dilema moral que aquele possa ter em decorrência da prática do delito. Como observa Tim Ayling (s.d.): quem rouba uma carteira se lembra com algum remorso do rosto da mulher que a possuía, mas o mesmo não ocorre com o fraudador cibernético, que não a vê.

Não é difícil encontrar plataformas que negociam essas ferramentas. São sites que contêm uma diversidade de produtos, classificações de clientes, ranking de popularidade e até help desk (RIVA, s.d.).

Tal realidade constitui um desafio de enormes proporções para indivíduos, corporações, governos e, particularmente, para as instituições incumbidas da repressão criminal.