Rootkit Creation and DLL Injection Techniques

What is a Rootkit?

Well, I think if you’re reading this, it’s because you know what a rootkit is and you are interested in scheduling one. But for the clueless, I have just a clarification.

A rootkit, broadly speaking, is a tool that lets you hide the administrator of an information system from the same, whether the processes that are running on your computer, established connections, files… Imagine the potential of such a tool; we can take full control of a system without the user knowing if you

Read More

System Development Methods: SDLC, Agile, and SCRUM

Systems Development Method – SDM

A standard process used in an organization to conduct all the steps necessary to analyze, design, implement, and maintain an information system.

Systems Development Life Cycle – SDLC (Circular Process)

A life cycle model for system development and the traditional model used to develop, maintain, and replace information systems. It consists of phases/steps, often with sub-steps, and recommends/assumes the use of techniques and tools. The steps have expected results

Read More

Software Development Process: Phases and Deliverables

Software Development Process: Activities

Implementation Process

  • Analysis of System Requirements
  • Design System Architecture
  • Analysis of Software Requirements
  • Design Software Architecture
  • Detailed Design of Software
  • Coding and Testing Software
  • Software Integration
  • Software Qualification Testing
  • System Integration
  • System Qualification Testing
  • Installing Software
  • Support for Software Acceptance

Rational Unified Process (RUP) Phases

  • Inception: The goal in this phase is to determine the project’s vision.
  • Elaboration:
Read More

Software Testing: Black Box, White Box, and More

Criteria for Choosing Black Box Data

Values should include easy, typical, realistic, extreme, and illegal values.

Techniques Using Black Box Testing

  • Boundary value analysis
  • Equivalence partitioning

White Box Testing of Warrant

  • Run at least once all the paths of each module.
  • Use decisions at their true and false values.
  • Run all loops.
  • Use internal data structures.

Flow Graph

Represents the program flow control and is used to more easily trace the paths.

Cyclomatic Complexity

Represents the number of independent

Read More

Software Architecture: Principles, Patterns, and Practices

ANSI/IEEE Standard 471-2000:
Architecture is the fundamental organization of a system, embodied in its components, their relationships to each other and the environment, and the principles governing its design and evolution.

Perry and Wolf: Software Architecture = { Elements, Form, Rationale }

History of Software Architecture

  • Agile Manifesto: In February 2001, 17 software developers met at the Snowbird resort in Utah to discuss lightweight development methods.
  • Agile is not incompatible with or somehow
Read More

Software Development Methods: Testing, Agile, and Plan-Driven Approaches

SequenceDiagram

Testing

Development Testing: The system is tested during development to discover bugs and defects. System designers and programmers are likely to be involved in the testing process.

Release Testing: A separate testing team tests a complete version of the system before it is released to the users. The goal is to check that the system meets the requirements of stakeholders.

User Testing: Users test the system in their own environment. Acceptance testing is one type of user testing where the customer

Read More