Neste artigo explicarase que é e como funciona a ferramenta PUME (Python Universal Mutation Engine), dando tamén algún exemplo de uso para que se vexa ata onde chega.
Introdución PUME é unha ferramenta que modifica aleatoriamente o código fonte dun script ou programa feito en Python sen cambiar a funcionalidade do programa orixinal. Isto conséguese principalmente facendo modificacións sobre a Árbore Sintáctica Abstracta (AST polas súas siglas en inglés) do programa.
[Leer máis]
Wardriving coa Raspi no 2023
Dando unha volta polos wifis do lugar
Intro Boas xente, nesta entrada imos a revisar unha vella técnica de seguridade de redes wifi, o wardriving. O wardriving consiste en localizar redes wifis dentro dun lugar, que pode ser unha rúa ou unha cidade.
Para iso imos precisar certo equipo. Por unha parte, unha antena wifi para capturar o sinal dos puntos de acceso (aka routers), e pola outra un dispositivo GPS que nos axude a recoller a localización dende onde estamos capturando o sinal.
[Leer máis]
Profiling visual para Python
Boas, xente.
Hoxe veño cun exemplo práctico de como podemos analizar os nosos programas de Python para atopar facilmente pescozos de botella.
Fálase moito de como as optimizacións non se deben facer a cegas, senón que hai que medir que partes dun programa son as problemáticas para conseguir mellorar a execución do código de xeito eficiente. Hoxe veremos como facelo de forma cómoda e práctica.
Gráficos de lapas (Flame Graphs) Hai moitos xeitos de medir e visualizar o comportamento dunha aplicación, pero persoalmente o que máis cómodo me parece é a técnica dos Gráficos de lapas (Flame Graphs) descrito por Brendan Gregg.
[Leer máis]
Reversing con carraxe
Sacando contrasinais con angr
Boas xente,
Estes dias andei cacharreando con angr e aprendendo un pouco sobre execución simbólica.
Que diaños é angr? E a execución simbólica? angr é unha ferramenta para análise dinámico de programas. Concretamente é un emulador que executa o programa aplicando execución simbólica. Deste xeito podemos só executar a parte do programa que nos interesa e non todo o programa.
A execución simbólica ven sendo executar o programa ou unha parte del para coñecer que valor precisamos nun símbolo (algo parecido a unha variábel) para podermos chegar dunha parte ou estado do programa a outro.
[Leer máis]
Contas rápidas no terminal
Boas, xente.
A semana pasada pasei por un comentario en HN do 2019. O usuario estaba experimentando cuns script pra facer algunhas contas directamente no terminal bash.
TLDR: Clica aquí pra saltar a historia e ir directamente ao código.
O que o usuario propoñía era usar algo coma isto, baseado no comando dc (os comentarios son meus).
$ . calc.sh # Cargar funcións $ * 4 5 # Multiplica 4 e 5 20 $ / 21 3 # Divide 21 por 3 7 Isto soaba interesante.
[Leer máis]
Usando libfuzzer en proxectos compilados con autotools
Boas xente.
Estes días estiven xogando con libfuzzer, unha ferramenta incorporada no compilador clang que nos permite fuzzear un programa que se compile con clang. O fuzzing é pasarlle datos (pseudo-)aleatorios a un programa e ver se casca.
Para facer isto con libfuzzer, tes que definir no programa unha función chamada LLVMFuzzerTestOneInput que acepte un buffer de bytes que libfuzzer invocará en repetidamente en bucle pasando diferentes datos.
[Leer máis]
Como Converterse En Hacker
Eric Steven Raymond
Boas xente.
Este post é unha tradución do How To Become A Hacker de Eric Steven Raymond, publicado orixinariamente no 2001 (a última actualización a día de hoxe fíxose no 2020).
Eric Raymond, autor de grandes pezas como The Cathedral & the Bazaar ou The Art of Unix Programming , amósanos neste icónico texto o que é un hacker, cal é a súa filosofía e os valores que defende, así como a actitude e coñecementos que se precisan para ser un deles.
[Leer máis]
Truquiños para mellorar a usabilidade de programas de consola
Boas xente,
Neste post vouvos amosar unha serie de truquiños que, pola miña experiencia, son cremita para aumentar a usabilidade das utilidades de consola. Vounos deixar aquí plasmados para non esquecelos e coa esperanza de que tamén lle poidan servir a máis xente.
Ao final a clave e facer os programas simples, o que non é tan fácil como parece, pero agardo que estes truquiños che axuden.
[Leer máis]
Virus e Python
Nesta publicación explicarase varias cuestións a hora de entender como funciona un virus. Primeiro explicaranse que son e como é o seu ciclo de vida. A continuación, esbozaranse as principais técnicas para detectar un virus. Despois, comentaranse as principais técnicas anti-antivirus. Logo, explicarase como funciona un virus aportando exemplos de código, para finalmente, engadir varias melloras e proteccións para que non se poida detectar mediante sinatura.
Advertencia: a finalidade desta publicación é educativa.
[Leer máis]
Manifesto Hacker
Boas xente,
Hoxe traemos a tradución dun dos textos máis icónicos da cultura hacker, o manifesto hacker, publicado orixinalmente na revista Phrack en 1986. Inda que xa choveu dende aquela, ideas como a liberdade de coñecemento e a curiosidade insaciable seguen moi presentes na comunidade hacker hoxe en día.
Esperamos que vos guste esta homenaxe.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= O seguinte foi escrito pouco despois do meu arresto... \/\A conciencia dun Hacker/\/ by +++The Mentor+++ (traducido por Hackliza) Escrito o 8 de Xaneiro do 1986 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Outro foi capturado hoxe, está en todos os xornais.
[Leer máis]