OWASP Top 10 - 2017

  • November 20, 2017
  • tuxotron
  • OWASP Top 10

    OWASP Top 10

    Después de versiones previas, ya ha sido publicada la versión final del OWASP Top 10 de este año 2017. Un documento que recopila las 10 vulnerabilidades más críticas en aplicaciones web.

    Este año se han colado tres tipos nuevos de amenazas: XXE, Deserialización insegura y falta de monitorización y registros. La primera basado en datos reales, y las dos últimas por votación de la comunidad.

    La lista es la siguiente:

    • A1:2017-Injection
    • A2:2017-Broken Authentication
    • A3:2017-Sensitive Data Exposure
    • A4:2017-XML External Entities (XXE)
    • A5:2017-Broken Access Control
    • A6:2017-Security Misconfiguration
    • A7:2017-Cross-Site Scripting (XSS)
    • A8:2017-Insecure Deserialization
    • A9:2017-Using Components with Known Vulnerabilities
    • A10:2017-Insufficient Logging & Monitoring

    Además de dicha lista con detalles sobre cada amenaza, el documento también recopila recomendaciones sobre seguridad para desarrolladores, testeadores de seguridad, organizaciones y jefes de proyectos.

Introducción a la Organización del Ordenador Usando Ensamblador con un Raspberry Pi

  • November 16, 2017
  • tuxotron
  • Subsistema del Ordenador

    Subsistema del Ordenador

    Introduction to Computer OrganizationARM Assembly Language Using the Raspberry Pi es un libro electrónico y gratuito que nos enseña cómo funciona el hardware, a bajo nivel, de un ordenador desde el punto de vista del programador.

    Para ello, se basa en uno de nuestros “juguetes” favoritos: Raspberry Pi, con Raspbian y usando lenguaje ensamblador para la arquitectura de la CPU de dicho dispositivo: ARM.

    El objetivo del libro es que el lector llegue a entender como funciona un ordenador desde el nivel más bajo. Aunque uno prácticamente no escriba aplicaciones directamente en ensamblador, sin duda alguna te hará mucho mejor a la hora de programar, analizar malware, realizar ingeniería inversa, etc.

    El libro empieza desde los conceptos más básicos como la preparación de tu Raspberry Pi o el sistema binario, hasta el uso de interrupciones y el GPIO.

    El índice del mismo es el siguiente:

    • Introduction
      • Efficient Use of This Book
      • Computer Subsystems
      • How the Subsystems Interact
      • Setting Up Your Raspberry Pi
    • Data Storage Formats
      • Bits and Groups of Bits
      • Exercises
      • Mathematical Equivalence of Binary and Decimal
      • Exercises
      • Unsigned Decimal to Binary Conversion
      • Exercises
      • Memory
      • Exercises
      • Using C Programs to Explore Data Formats
      • Programming Exercises
      • Examining Memory With a Debugger
      • Programming Exercise
      • Storing Characters
      • Programming Exercise
      • Low-level Character Handling
      • Programming Exercises
      • Accessing the GPIO in C
    • Computer Arithmetic
      • Addition and Subtraction
      • Exercises
      • Arithmetic Errors—Unsigned Integers
      • Signed Integers
      • Exercises
      • Arithmetic Errors—Signed Integers
      • Exercises
      • Basic Data Types
      • C/C++ Basic Data Types
      • Hexadecimal to Integer Conversion
      • Programming Exercise
      • Bitwise Logical Operations
      • Programming Exercise
      • Other Codes.
      • Boolean Algebra
      • Boolean Algebra Operations
      • Exercises
      • Canonical (Standard) Forms
      • Exercise
      • Boolean Function Minimization
      • Exercises
    • Logic Gates
      • Crash Course in Electronics
      • CMOS Transistors
      • NAND and NOR Gates
      • Exercise
    • Logic Circuits
      • Combinational Logic Circuits
      • Programmable Logic Devices
      • Sequential Logic Circuits
      • Designing Sequential Circuits
      • Memory Organization
    • Central Processing Unit
      • Overview
      • CPU Registers
      • CPU Interaction with Memory
      • Program Execution in the CPU
      • Using gdb to View the CPU Registers
      • Programming Exercises
      • Programming in Assembly Language
      • Program Organization
      • First Assembly Language Instructions
      • Creating a Program in Assembly Language
      • Programming Exercises
      • Assemblers and Linkers
      • Structure of the main Function
      • Passing Arguments in Registers
      • The Stack
      • Stack Management In a Function
      • Programming Exercise
      • Local Variables on the Stack
      • Programming Exercise
      • Data Storage in Memory
    • Instruction Details
      • Addressing Modes
      • The Assignment Operator
      • Machine Code, Assignment
      • Branching
      • Machine Code, Branching
      • Assembler Listings
    • Program Flow Constructs
      • Repetition
      • Programming Exercises
      • Binary Decisions
      • Programming Exercise
    • Writing Your Own Functions
      • Overview of Passing Arguments
      • Accessing Arguments in a Function
      • Programming Exercises
    • Bit Operations; Multiplication and Division
      • Logical Instructions
      • Programming Exercise
      • Shifting Bits
      • Programming Exercises
      • Multiplication
      • Division
      • Programming Exercises
    • Data Structures
      • Arrays
      • Programming Exercise
      • Records (structs)
      • structs as Function Arguments
      • Programming Exercise
      • structs as C++ Objects
      • Programming Exercise
    • Fractional Numbers
      • Fractional Values in Binary
      • Programming Exercise
      • Fixed Point Fractional Values
      • Floating Point Format
      • IEEE 754
      • Exercises
      • Floating-Point Hardware
    • Interrupts and Exceptions
      • CPU Features
      • Supervisor Call
      • Interrupts
      • Error Condition
    • Input/Output
      • Memory Timing
      • I/O Device Timing
      • Bus Timing
      • I/O Interfacing
      • I/O Ports
      • Programming Exercise
    • General Purpose Input/Output (GPIO) Device
      • GPIO I/O Memory
      • GPIO Connections
      • Programming Exercise

Vídeos DEF CON 25