one must usually hook into operating system-specific APIs. This makes sense
right In my case, because we are dealing with different architectures and kernels
OSX,Linux,Windows. But I want to know if this is not the case?
In addition to some limited functions you get from OS modules, my assumption is that the API hooked to the operating system will usually be specific to the *POSIX style (maybe they have more in common Point) For example, in Windows.
Especially I think of Deviare on Windows. It handles .DLL files. This is almost Windows.
The moment we heard about DLL, the mind entered Windows land,.plist OS X, etc..
def Process(records , per_record_hook=None):
"adds all records to XYZ system"
for record in records:
if per_record_hook:
per_record_hook(record)
XYZ.append( record)
def print_record(record):
"print a'.' for each record (primitive counter)"
print'.'
Then :
Process(records_from_somewhere, per_record_hook=print_record)
In the world of penetration testing using Python, it looks It looks like
one must usually hook into operating system-specific APIs. This makes sense
to me because we are dealing with different architectures and kernels
OSX, Linux, Windows. But I wonder if this is not the case?
In addition to some limited functions you get from OS modules, my assumption is that the API hooked to the operating system will usually be specific to the *POSIX style (maybe they have more in common Point) For example, in Windows.
Especially I think of Deviare on Windows. It handles .DLL files. This is almost Windows.
The moment we heard about DLL, the mind entered Windows land, .plist OS X, etc..
Hooking is a way to make your own code execute while another system is running, regardless of other systems Is it the operating system, GUI or any other system. Some stupid examples in Python:
def Process(records, per_record_hook=None):
"adds all records to XYZ system"
for record in records:
if per_record_hook:
per_record_hook(record)
XYZ.append(record)
def print_record (record):
"print a'.' for each record (primitive counter)"
print'.'
Then:
Process(records_from_somewhere, per_record_hook=print_record)