Nishanth KP Documentation

website·Indexed 31 days ago

https://blog.nishanthkp.com

A collection of technical guides and quick references covering DevSecOps, GitOps with Flux, Chaos Engineering fundamentals and attacks, Kubernetes setup with Minikube, Docker management, PostgreSQL, and Python Selenium automation.

Tokens
66.5K
Snippets
339
Records
548
Agent score
54%

What's inside Nishanth KP Docs

  1. Overview of SonarCloud SAST

    SonarCloud is a cloud-based Static Application Security Testing (SAST) tool used to scan source code for vulnerabilities. Pricing is free for open-source projects and free for private projects up to 100,000 lines of code; beyond that, it is a paid service.
  2. Overview of Hadolint Dockerfile Linter

    Hadolint is a Dockerfile linter designed to ensure the creation of best-practice Docker images. It works by parsing the Dockerfile into an Abstract Syntax Tree (AST) and applying rules against that AST. To ensure the quality of shell scripts within the Dockerfile, Hadolint integrates ShellCheck to lint Bash code found inside RUN instructions.
  3. Overview of the OpenLDAP Secrets Engine

    The OpenLDAP secrets engine in Vault provides a centralized workflow for managing existing LDAP entry passwords. It allows administrators to empower users with access to their own credentials and implements automatic password rotation based on a configured time-to-live (TTL). This reduces the risk of credential compromise by ensuring passwords are short-lived and can be revoked and rotated individually without changing global credentials.
  4. Overview of Vault Dynamic Database Secrets

    Vault's database secrets engine generates on-demand, short-lived database credentials. Instead of using static environment variables, applications request credentials from Vault. Vault creates a unique user in the database with a specific Time-To-Live (TTL) and automatically revokes the credential once the TTL expires, reducing the risk of credential compromise.
  5. Understand HashiCorp Vault Authentication Mechanisms

    Authentication methods in HashiCorp Vault are components responsible for validating the identity of Vault clients. Once a client is successfully authenticated, the authentication method is responsible for assigning a specific set of policies to that client, which determines their access levels within the Vault system.
  6. Understand and use Python Tuples

    A tuple is a data structure similar to a list, but it is immutable, meaning its size cannot change and elements cannot be added or modified after the tuple is originally specified. Tuples are delimited by parentheses ().
    # Creating a tuple
    my_tuple = ("ftp", "ssh", "http", "snmp")
    
    # Accessing an element
    print(my_tuple[0])  # Output: ftp
    
    # Attempting to modify an element will raise a TypeError
    # my_tuple[0] = "FTP"  # Raises: TypeError: 'tuple' object does not support item assignment
  7. Monitor device hardware, apps, and configuration status in Microsoft Intune

    The Microsoft Intune admin center allows administrators to verify device health and configuration. From the Devices overview, you can monitor Enrollment status, Enrollment alerts, Compliance status, Configuration status, and Software update status. For a specific device, you can inspect the Hardware inventory, Discovered apps, and the state of assigned Device configuration profiles. A state of 'Succeeded' indicates that the configuration profile was applied successfully to the device.
    1. Go to Devices > Overview (to see general status tabs)
    2. Go to Devices > All devices > [Select Device]
    3. Select Hardware (to view hardware inventory)
    4. Select Discovered apps (to view app inventory)
    5. Select Device configuration (to verify if profiles are 'Succeeded')
  8. Use Python dictionaries for key-value storage

    Python dictionaries store information in key:value pairs using curly brackets {}. They are implemented as hash tables. Keys must be immutable objects (e.g., strings, numbers, Booleans, or tuples); mutable objects like lists or dictionaries cannot be used as keys. Values are accessed by their key name rather than a numerical index.
    services = {"ftp": 21, "ssh": 22, "smtp": 25, "http": 80}
    
    # Accessing a value
    print(services["ftp"])
    
    # Reassigning a value
    services["http"] = 8080
  9. Understand State Attacks in Chaos Engineering

    State attacks are a category of chaos engineering experiments designed to change the state of an environment to test system resilience against unexpected infrastructure changes. These attacks simulate scenarios such as power outages, node failures, clock drift, or application crashes by terminating processes, shutting down or restarting hosts, and modifying the system clock.
  10. Understand Reverse Shell concepts for penetration testing

    A reverse shell is a technique used during post-exploitation penetration testing to gain access to the shell of an external server. It involves creating a script on a target machine that initiates a connection back to the attacker's machine, allowing the attacker to access the target's filesystem and execute commands.
  11. Manage Vault Secret Engines via UI

    Vault provides a user interface to manage the lifecycle of secret engines. Provided the user has the correct token policies, they can enable, configure, and test specific engines, such as the Transit secrets engine.