Skip to main content
Better usage of the wiki syntax
Source Link
perror
  • 19.2k
  • 29
  • 89
  • 151

I'd approach this problem as follows: 0. Check for logging strings. Probably you'll find there something related to allocations which will solve the problem.

  1. Find all functions with 1 argument (size for malloc and pointer for free)

  2. Track results of these functions. malloc result is usually checked against NULL after use and rarely used in math operations. In addition result of malloc function is used in store operations or memcpy.

  3. Free function argument is not used after calling it.

  4. Malloc and free should be located in close addresses.

  1. Check for logging strings. Probably you'll find there something related to allocations which will solve the problem.

  2. Find all functions with 1 argument (size for malloc() and pointer for free()).

  3. Track results of these functions. malloc() result is usually checked against NULL after use and rarely used in math operations. In addition result of malloc() function is used in store operations or memcpy().

  4. Free function argument is not used after calling it.

  5. malloc() and free() should be located in close addresses.

These heuristics should be enough to narrow down the number of possible candidates to observable. 

Good luck.

I'd approach this problem as follows: 0. Check for logging strings. Probably you'll find there something related to allocations which will solve the problem.

  1. Find all functions with 1 argument (size for malloc and pointer for free)

  2. Track results of these functions. malloc result is usually checked against NULL after use and rarely used in math operations. In addition result of malloc function is used in store operations or memcpy.

  3. Free function argument is not used after calling it.

  4. Malloc and free should be located in close addresses.

These heuristics should be enough to narrow down the number of possible candidates to observable. Good luck.

I'd approach this problem as follows:

  1. Check for logging strings. Probably you'll find there something related to allocations which will solve the problem.

  2. Find all functions with 1 argument (size for malloc() and pointer for free()).

  3. Track results of these functions. malloc() result is usually checked against NULL after use and rarely used in math operations. In addition result of malloc() function is used in store operations or memcpy().

  4. Free function argument is not used after calling it.

  5. malloc() and free() should be located in close addresses.

These heuristics should be enough to narrow down the number of possible candidates to observable. 

Good luck.

Source Link
w s
  • 8.5k
  • 1
  • 26
  • 40

I'd approach this problem as follows: 0. Check for logging strings. Probably you'll find there something related to allocations which will solve the problem.

  1. Find all functions with 1 argument (size for malloc and pointer for free)

  2. Track results of these functions. malloc result is usually checked against NULL after use and rarely used in math operations. In addition result of malloc function is used in store operations or memcpy.

  3. Free function argument is not used after calling it.

  4. Malloc and free should be located in close addresses.

These heuristics should be enough to narrow down the number of possible candidates to observable. Good luck.