Anonymous Anonymous - 2 months ago
2892 0

Buffer Fuzzer is a fuzzer written in C by TheCodeWeaver. Buffer_Fuzzer is designed for
testing buffer overflows. It outputs the fuzz to a file. It adds B's to the end of the fuzz buffer
to simulate the memory address.

Other

Buffer_Fuzzer_V0.2_Src_README.txt

Buffer_Fuzzer Version 0.2 Src Release README
README Author: TheCodeWeaver

Sections:
1. Description
2. Compilation
3. Installation
4. Using Buffer_Fuzzer
5. License

Section 1: DESCRIPTION
Buffer Fuzzer is a fuzzer written in C by TheCodeWeaver. Buffer_Fuzzer is designed for
testing buffer overflows. It outputs the fuzz to a file. It adds B's to the end of the fuzz buffer
to simulate the memory address.

Section 2: COMPILATION
Compiling Buffer_Fuzzer requires gcc. The only dependencies are libc. Compiling Buffer_Fuzzer:
gcc Buffer_Fuzzer.c -o bfuzz.

Section 3: INSTALLATION
Simply place the binary generated from compilation in a directory that is part of the PATH
variable.

Section 4: USING BUFFER_FUZZER
Buffer_Fuzzer usage: bfuzz [filename] [file length]. Filename: Name of the file containing the
fuzz output. File length: Length of fuzz buffer (Does not include 8 byte memory address).

Section 5: License
This program is under the terms of the zlib license. A copy of the license is below.

Copyright (c) <2018> <TheCodeWeaver>

This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.

Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:

1. The origin of this software must not be misrepresented; you must not
   claim that you wrote the original software. If you use this software
   in a product, an acknowledgment in the product documentation would be
   appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
   misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
C

Buffer_Fuzzer_V0.2.c

/********************************
Project: Buffer_Fuzzer
Filename: Buffer_Fuzzer.c
Since: Dec. 26, 2017 (Original Program)
Author: TheCodeWeaver
Version: 0.2 (Version 0.2 Start Date: Jan. 6, 2018)
About: Creates files to fuzz software buffers. Simulates fuzz and 4 byte memory address.
********************************/

#include <stdio.h>
#include <stdlib.h>

//Fuzzing constants
#define FUZZ "A"
#define ADDRESS "BBBBBBBB"

//Function to create a file and write fuzz to it
void create_and_fuzz(char* file_name, int file_len);

int main(int argc, char *argv[])
{
  //Command line arg parsing
  if (argc == 1)
  {
    printf("Usage: bfuzz [filename] [fuzz length]\n");
    return 1;
  } else if (argc == 3)
  {
    printf("[+] Creating and fuzzing file...\n");
    create_and_fuzz(argv[1], atoi(argv[2]));
    printf("[+] Fuzzing finished!\n");
    printf("Goodbye.\n");
    return 0;
  } else
  {
    printf("Usage: bfuzz [filename] [fuzz length]\n");
    return 1;
  } //End of if else if else statement

  return 0;
} //End of main function

//create_and_fuzz function
void create_and_fuzz(char* file_name, int file_len)
{
  //Variables
  FILE* fp;

  //Open the file and fuzz it
  fp = fopen(file_name,"w+");
  //Write fuzz to file
  for (int i = 0; i < file_len; i++)
  {
   fprintf(fp, "%s", FUZZ);
  } //End of for loop
  //Write address to file
  fprintf(fp, "%s", ADDRESS);
  fclose(fp);

  return;
} //End of create_and_fuzz function
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download