Skip to content

Instantly share code, notes, and snippets.

View Dev-Dipesh's full-sized avatar

Dipesh Bhardwaj Dev-Dipesh

  • The Contentment Foundation
  • San Francisco, California
View GitHub Profile

Challenge Solutions

  1. Secret Key: F5LABS4445663337899
  2. Coded: F5LABS7776888678123
  3. UI Checks: F5LABS3425563334219
  4. Authorization Mess: F5LABS34255676246218
  5. Version Trouble: F5LABS0099876655774
  6. Bypass Controls: F5LABS9899877665588
  7. Weak Tokens: F5LABS1116536788549
  8. Credentials Stuff: F5LABS4445663337899, F5LABS8387288577236

Clark-Wilson Model

The Clark-Wilson model is a security framework designed to ensure that computer systems process transactions securely and maintain data integrity. It revolves around two main concepts:

  1. Constrained Data Items (CDIs): These are sensitive data elements that must be protected to ensure they remain accurate and reliable. The model ensures that CDIs can only be modified through specific, authorized procedures.
  2. Transformation Procedures (TPs): These are the only processes that can change CDIs. Each TP must be certified to meet certain integrity conditions, ensuring they only manipulate data in allowed ways.

In practical terms, the model requires users to be authenticated before accessing the system and ensures they have permission to execute TPs. It monitors and logs all transactions, both successful and those denied due to integrity issues or unauthorized access attempts. This framework is particularly useful in environments requiring strict audit capabilities and rigorous data integrit

Embracing Secure Remote Work: Exploring the Synergy of VDI, VPN, RBI, and Zero Trust Technologies

In this Gist, I've shared two tables that outline the steps and technologies involved in creating a secure remote work environment using VDI, VPN, RBI, and other security measures. The first table is a 6-step user journey highlighting risks and mitigation strategies. The second table presents additional steps and technologies to create a Zero Trust remote work environment.

VDI (Virtual Desktop Infrastructure): VDI is a virtualization technology that allows users to access a fully functional desktop environment remotely. It creates virtual machines on a centralized server, each running a separate operating system instance. Users can access these virtual desktops from their devices using a remote desktop protocol. VDI helps enhance security by keeping sensitive data within the data center, simplifying patch management, and providing centralized control over user access.

RBI (Remote Browser Isolation):

@Dev-Dipesh
Dev-Dipesh / realtime_dashboard_app_logs.md
Last active December 13, 2019 01:25
Cube.Js Realtime Dashboard App Logs

Full logs

> [email protected] dev /Users/dipesh/Desktop/Contentment Projects/TEST_REPO/super_admin
> node index.js

🔓 Authentication checks are disabled in developer mode. Please use NODE_ENV=production to enable it.
🦅 Dev environment available at http://localhost:4000
🚀 Cube.js server is listening on 4000
@Dev-Dipesh
Dev-Dipesh / boostnote.md
Created May 14, 2019 09:27
Boostnote Cheatsheet

📋 📘 Boostnote Markdown CheatSheet

The missing markdown feature cheat sheet for Boostnote.
It tries to give a short summary of all formatting options which are available in Boostnote.


⚠️ Only works in Boostnote.
👉 Open the Preview Page to see how it's rendered.
🈴 Chinese Version

@Dev-Dipesh
Dev-Dipesh / ffmpeg-install.sh
Created October 17, 2018 02:48 — forked from clayton/ffmpeg-install.sh
Install FFMPEG on OS X with HomeBrew to convert Mp4 to WebM
# Installation
brew install ffmpeg --with-vpx --with-vorbis --with-libvorbis --with-vpx --with-vorbis --with-theora --with-libogg --with-libvorbis --with-gpl --with-version3 --with-nonfree --with-postproc --with-libaacplus --with-libass --with-libcelt --with-libfaac --with-libfdk-aac --with-libfreetype --with-libmp3lame --with-libopencore-amrnb --with-libopencore-amrwb --with-libopenjpeg --with-openssl --with-libopus --with-libschroedinger --with-libspeex --with-libtheora --with-libvo-aacenc --with-libvorbis --with-libvpx --with-libx264 --with-libxvid
# Easy Peasy
ffmpeg -i video.mp4 video.webm
{
"auto_complete_commit_on_tab": true,
"color_scheme": "Packages/Oceanic Next Color Scheme/Oceanic Next.tmTheme",
"draw_white_space": "all",
"font_face": "Fira Mono",
"font_size": 20,
"tab_size": 2,
"theme": "Brogrammer.sublime-theme",
"translate_tabs_to_spaces": true,
"trim_automatic_white_space": true,
@Dev-Dipesh
Dev-Dipesh / ServiceWorker.md
Last active July 11, 2017 19:54
Understanding Service Worker

Service Worker

The Goal of this gist is to help understand service worker. It's not for diving deep in the core, but to understand the concepts, benefits and trade offs.

I have listed three resources which helped me greatly to unfurl the curtains:

Service Worker Status

const sql = require("mssql");
require("msnodesqlv8");
const conn = new sql.Connection({
database: "db_name",
server: "server_name",
driver: "msnodesqlv8",
options: {
trustedConnection: true
}
};
@Dev-Dipesh
Dev-Dipesh / rabbitmq_notes.md
Last active September 28, 2024 19:36
Why RabbitMQ is better over Redis and notes on RabbitMq.

Redis is Database whereas RabbitMQ was designed as a message router or message-orientated-middleware (mom), so I'm sure if you look for benchmarks, you'll find that RabbitMQ will outperform Redis when it comes to message routing.

RabbitMQ is written in Erlang which was specifically designed by the telecom industry to route messages, you get clustering out of the box due to it being written in Erlang which means in a clustered environment, RabbitMQ will outperform Redis even further.

Furthermore, you get guaranteed delivery of messages due to the AMQP protocol, in other words, if the network drops while consuming the message, the consumer won't be able to say thanks for the message, so the consumer will drop the message and Rabbit will requeue the message, if you publish a message and the queue didn't say thanks to the publisher due to network problems or timeouts, Rabbit will drop the message and the publisher will keep on trying to publish the message. You can have publish retries with backoff policies, so