Buffer Overflow Exercise in Ubuntu

In Ubuntu system, there is some protection scheme deployed to avoid buffer overflow attacks. Before deploying the attack, we should disable all the kernel functionality that protect the system from buffer overflow.

The program I am going to use is a small piece of c code that uses a strcpy function. The program is …

Pointer Notes

Pointers are very important, this post is a learning note form the cplusplus.com pointer section as well as the Stanford CS library booklet Pointers and Memory (By Nick Parlante, Copyright ©1998-2000, Nick Parlante). The first topic about pointer is how to declare them, how to dereference them, and how to assign a …

Function With Variable Arguments

To define a function with a variable number of arguments. One solution is to use the cstdarg header file. There are four parts needed:

  1. va_list, stores the list of arguments,
  2. va_start, initializes the argument list,
  3. va_arg, returns the next argument in the list,
  4. va_end, cleans up the variable argument list.

Whenever a …

C++ Simple File Handling

C++ has two basic stream classes to handle files, ifstream and ofstream. To use them, include the header file fstream. Here is an example:

 1#include <fstream>
 2#include <iostream>
 3using namespace std;
 4
 5int main()
 6{
 7  char str[10];
 8
 9  // Creates an instance of ofstream, and opens example.txt …