Hello World!

Welcome to my site. I use this site as a repository to dump knowledge I come across, generally in the areas of software engineering and information technologies, but may include other miscellaneous tidbits. Most of the posts are written as notes for my personal reference.

 

if i.hear then
i.forget
if i.see then
i.remember
if i.do then
i.understand

Latest articles

Cryptography

Hash Function Definition: Mapping a long string to a shorter string. Key Properties: Collision-resistance: Difficulty in finding two inputs that map to the same output. Pre-image resistance: Difficulty in finding any pre-image for a given output. Uses: Protecting the integrity of systems and passwords. Used for the actual storage of passwords   Private Key Encryption […]

Read article : Cryptography

Network Security

Syn Flood Attacks https://www.cloudflare.com/learning/ddos/syn-flood-ddos-attack/ A SYN flood (half-open attack) is a type of denial-of-service (DDoS) attack which aims to make a server unavailable to legitimate traffic by consuming all available server resources. By repeatedly sending initial connection request (SYN) packets, the attacker is able to overwhelm all available ports on a targeted server machine, causing […]

Read article : Network Security

Web Security

  SQL Injection =  no sanitizing Cross-site scripting = inject javascript via uri https://example.com/test.php?color=green&background=</style><script>alert(String.fromCharCode(88,83,83))</script> Path Traversal = Allowing for path or directory traversal on your server is an amazingly bad idea. You would be allowing people to list the folders on your server and to navigate from folder to folder. This allows attackers to go […]

Read article : Web Security

Software Security

Introduction to Software Security   What is computer security? Systems may fail for many reasons Reliability deals with accidental failures Usability deals with problems arising from operating mistakes by users Security deals with intentional failures created by intelligent parties Computing in the presence of an adversary   Examples of Software Problems Therac-25 medical accelerator Killed […]

Read article : Software Security

Security – Operating Systems

  Computer System Components   Hardware Provides basic computer resources (CPU, memory, I/O devics) Maybe addons Possible firmware Operating System Controls hardware and various apps Application Programs Users What is an Operating System Program that acts as an intermediary between user and computer hardware Efficiency – better utilization of resources Convenience – ease of use […]

Read article : Security – Operating Systems

Security – Malware

Malware Malicious code that is stored on and runs on a victim’s system   How does it get to run? Attacks a user – or network-facing vulnerable service (often using techniques we’ve just learned!) Backdoor: Added by a malicious developer Social engineering: Trick the user into running/clicking/installing Trojan horse: Offer a good service, add in the […]

Read article : Security – Malware

Security – Side Channel Attacks

Covert Channels Covert means of transferring data Channel that transfers information in a way that violates a security policy An insider process leaks information to an outsider process not normally allowed to access that information Often divided into two (three) main categories: Storage Communication done in some memory space Timing Delay or some action in […]

Read article : Security – Side Channel Attacks

Security – User Access Controls

Access Control Provides the essential services of authorization, identification and authentication, access approval, and accountability authorization specifies what a subject can do identification and authentication ensure that only legitimate subjects can log on to a system access approval grants access during operations, by association of users with the resources that they are allowed to access, […]

Read article : Security – User Access Controls

OAuth Principles

Review of different types of authentication attacks. This is examined through an example where user wants an application X to access their files on application Y and needs to delegate those permissions.   Exposing Credentials Giving out your credentials is bad. Plain and simple. Minus the risk of exposure, having full credentials doesn’t allow for […]

Read article : OAuth Principles