Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/carlosgprado/NaFl
/ functions
Functions
110 in github.com/carlosgprado/NaFl
⨍
Functions
110
◇
Types & classes
11
↓ 30 callers
Method
gen_long_strings
Given a sequence, generate a number of selectively chosen strings lengths of the given sequence. NOTE: argument max_len sets
NaFlCore/helpers/mutator.py:465
↓ 11 callers
Method
get
(self)
NaFlCore/server/website.py:112
↓ 2 callers
Function
DisplayError
NaFlCore/tests/TestProgramToFuzz.cpp:132
↓ 2 callers
Function
load_plugin
(plugin)
NaFlCore/helpers/plugin_loader.py:45
↓ 1 callers
Function
H
Implementation of Shannon's Entropy Ero Carrera is the man
NaFlCore/helpers/utils.py:70
↓ 1 callers
Function
Usage
Help message
PinTool/MyPinTool.cpp:281
↓ 1 callers
Method
_connect_to_server
(self)
NaFlCore/helpers/communication.py:27
↓ 1 callers
Method
_gen_mutation
Generates mutated contents from a sample file
NaFlCore/helpers/mutator.py:50
↓ 1 callers
Method
_get_input_filename
Gets a filename from the Mutation Queue Moves the Queue elements around (from mutation to processed one)
NaFlCore/helpers/mutator.py:33
↓ 1 callers
Method
_get_platform_info
Information regarding the computer where the fuzzer is running
NaFlCore/helpers/communication.py:104
↓ 1 callers
Method
_reconnect
Try to connect back to the server
NaFlCore/helpers/communication.py:85
↓ 1 callers
Method
add_crash
Convenience wrapper
NaFlCore/helpers/communication.py:53
↓ 1 callers
Function
analyze_crash
This is called with the command line (including the filename) which caused the crash before. It is a late analysis routine which sorts th
NaFlCore/helpers/crash_analysis.py:107
↓ 1 callers
Method
apply_post_processing
Applies the selected plugins in *reverse* order to recreate the original file format :param mutated_buffer: eeeh... the mutat
NaFlCore/helpers/mutator.py:154
↓ 1 callers
Method
apply_pre_processing
Applies the selected plugins in order to extract the raw data to be mutated :param file_contents: eeeh... the input file cont
NaFlCore/helpers/mutator.py:139
↓ 1 callers
Method
banner
(self)
NaFlCore/server/CrashDBMaintenance.py:22
↓ 1 callers
Function
boom
NaFlCore/tests/TestProgramToFuzz.cpp:35
↓ 1 callers
Method
connect_to_db
Open a connection to the SQLite DB
NaFlCore/server/CrashDBMaintenance.py:112
↓ 1 callers
Method
delete_current_test_case
Not interesting mutation. Kill it with fire.
NaFlCore/helpers/mutator.py:89
↓ 1 callers
Method
empty_db
Resets the database to its initial state (empty, in this case)
NaFlCore/server/CrashDBMaintenance.py:131
↓ 1 callers
Function
fuzzing_loop
Fuzzing Loop. This loops (maybe indefinitely) creating several fuzzing processes
NaFlCore/NaFlCore.py:140
↓ 1 callers
Method
generate_table
This generates HTML code representing a table
NaFlCore/server/website.py:33
↓ 1 callers
Method
generate_website
(self)
NaFlCore/server/website.py:88
↓ 1 callers
Method
get_common_strings
Produce generic (independent from input) strings. These are known to exercise some corner cases.
NaFlCore/helpers/mutator.py:379
↓ 1 callers
Function
get_plugins
()
NaFlCore/helpers/plugin_loader.py:18
↓ 1 callers
Function
get_random_filename
Gets a random filename from inside the ZipFile object, with the selected file extension :return: arbitrary filename of selected type (ext
NaFlCore/plugins/unzip/__init__.py:77
↓ 1 callers
Method
get_token_mutation
This is particularly effective for delimiters but it would be useful for other tokens :return: random element of list of toke
NaFlCore/helpers/mutator.py:314
↓ 1 callers
Function
initialize_logging
Printing to console is dirty
NaFlCore/NaFlCore.py:40
↓ 1 callers
Method
initialize_plugins
Load the selected plugins and makes them available to Cthulhu :return:
NaFlCore/helpers/mutator.py:129
↓ 1 callers
Function
is_interesting_input
Compare the bitmap corresponding to the current trace with the history of taken paths. NOTE: the return values are different than the one
NaFlCore/NaFlCore.py:83
↓ 1 callers
Function
main
This creates a shared memory region NOT backed up by a file
NaFlCore/NaFlCore.py:204
↓ 1 callers
Function
main
()
NaFlCore/server/website.py:117
↓ 1 callers
Function
parse_config_file
Initializes fuzzing parameters with information stored in a config file
NaFlCore/NaFlCore.py:61
↓ 1 callers
Function
random_alphabetical_string
Filenames are usually rejected if they contain funky characters, blocking execution
NaFlCore/helpers/utils.py:20
↓ 1 callers
Function
random_string
Returns a random string, UTF-8 encoded
NaFlCore/helpers/utils.py:38
↓ 1 callers
Method
retrieve_crash_information
Read the database
NaFlCore/server/website.py:24
↓ 1 callers
Method
retrieve_crashes
Gets all crash information :return: iterator of tuples
NaFlCore/server/database.py:78
↓ 1 callers
Function
run_under_pin
Runs the given file under PIN and gets the bitmap representing execution :returns: this bitmap
NaFlCore/NaFlCore.py:120
↓ 1 callers
Function
s2l
PinTool/MyPinTool.cpp:48
↓ 1 callers
Function
setupIPC
PinTool/MyPinTool.cpp:56
↓ 1 callers
Function
withinInterestingExecutable
PinTool/MyPinTool.cpp:108
↓ 1 callers
Method
write_crash
Process data to a format suitable for storage in the SQLite database
NaFlCore/server/database.py:49
↓ 1 callers
Method
write_test_case
It creates the test case contents :return: Tuple (original, mutated) filenames or None
NaFlCore/helpers/mutator.py:72
↓ 1 callers
Method
yield_mutation
This is the meat and potatoes!!!1! Generators are cool Itertools are better!
NaFlCore/helpers/mutator.py:170
Function
ExceptionCallback
PinTool/MyPinTool.cpp:220
Function
FileIOCompletionRoutine
NaFlCore/tests/TestProgramToFuzz.cpp:23
Function
Fini
Finish and cleanup functions
PinTool/MyPinTool.cpp:92
Function
LogConditionalJmp
PinTool/MyPinTool.cpp:165
Function
TimerThread
PinTool/MyPinTool.cpp:247
Function
Trace
This identifies conditional jumps (don't care which kind) NOTE: These are all instrumentation functions (JIT), they just point to the analysis ones
PinTool/MyPinTool.cpp:180
Method
__cmp__
(self, other)
NaFlCore/helpers/queue.py:25
Method
__init__
:return:
NaFlCore/helpers/config.py:12
Method
__init__
(self, debug = False)
NaFlCore/helpers/mutator.py:22
Method
__init__
(self, debug = False, mode = 'sequential')
NaFlCore/helpers/mutator.py:108
Method
__init__
(self)
NaFlCore/helpers/communication.py:19
Method
__init__
(self, priority, filename, id, bitmap)
NaFlCore/helpers/queue.py:19
Method
__init__
Simplicity is better than complexity
NaFlCore/server/database.py:15
Method
__init__
This is a poor man's dashboard :)
NaFlCore/server/website.py:17
Method
__init__
(self, sqlite_file)
NaFlCore/server/CrashDBMaintenance.py:104
Method
__init__
(self)
NaFlCore/server/xmlrpc-server.py:29
Function
_tmain
NaFlCore/tests/TestProgramToFuzz.cpp:64
Function
append_serial
Uniquely name the files test.123.txt
NaFlCore/helpers/fileops.py:19
Function
cleanup_old_mutations
Existing mutation.xxx files from old runs could be a problem. Erase them before.
NaFlCore/helpers/fileops.py:70
Method
complete_greet
This is used for custom autocompletions Ex: the arguments are read from a db, etc.
NaFlCore/server/CrashDBMaintenance.py:64
Function
copy_all_files
It does what it says :)
NaFlCore/helpers/fileops.py:31
Function
crash_event_handler
This implements the whole logic. The code below triggered by an access violation is responsible for storing / doing whatever with the cra
NaFlCore/helpers/crash_analysis.py:25
Method
delete_block
Exactly what it says :) Randomly selects a block and deletes it
NaFlCore/helpers/mutator.py:270
Method
do_echo
Print the input, replacing '$out' with the output of the last shell command
NaFlCore/server/CrashDBMaintenance.py:46
Method
do_greet
Greet the person
NaFlCore/server/CrashDBMaintenance.py:53
Method
do_prompt
Change the interactive prompt
NaFlCore/server/CrashDBMaintenance.py:28
Method
do_quit
Quits the application, obviously
NaFlCore/server/CrashDBMaintenance.py:96
Method
do_resetdb
Clears the DB
NaFlCore/server/CrashDBMaintenance.py:76
Method
do_shell
Run a shell command
NaFlCore/server/CrashDBMaintenance.py:37
Function
entropy_scan
Implemented as a generator. Did I mention Ero is the man?
NaFlCore/helpers/utils.py:86
Function
gen_random_filename
FIXME: things like mutation, crash, etc. dirs should be read from a config file and be available globally
NaFlCore/helpers/fileops.py:89
Function
get_all_filenames
Returns a list of absolute filename + path within the given directory
NaFlCore/helpers/fileops.py:62
Function
get_base64_contents
Exactly that :param file: filename + path :return: None or Base64 string
NaFlCore/helpers/fileops.py:120
Function
get_queue_element_by_id
The function name is its own documentation :)
NaFlCore/helpers/queue.py:29
Function
get_random_filename
It returns a random filename from a directory
NaFlCore/helpers/fileops.py:50
Function
get_size_uint32
Let's do things right. Calculate the size of an unsigned long for this architecture. Or 4 :)
NaFlCore/helpers/utils.py:96
Function
hit_bin
Given a hit number, return the corresponding bin Hit bins: {1, 2, 3, 4-7, 8-15, 16-31, 32-127, 128+}
NaFlCore/helpers/utils.py:111
Function
imageLoad_cb
This is called every time a MODULE (dll, etc.) is LOADED Analysis function (execution time)
PinTool/MyPinTool.cpp:119
Method
lift_bytes
Increases byte values from a random segment by a random value
NaFlCore/helpers/mutator.py:207
Function
main
Main function - initialize and set instrumentation callbacks */
PinTool/MyPinTool.cpp:295
Method
mutate_token
Mutates a token (subset from the buffer) and substitutes it with its mutation
NaFlCore/helpers/mutator.py:247
Function
post
This example plugin does not really process the data. It just prints some debug message :param mutated_data: data mutated by Cthulhu
NaFlCore/plugins/example/__init__.py:27
Function
post
This is rather tricky since it is not possible to delete or update a file within a Zip file in Python It is necessary to create a new Zip
NaFlCore/plugins/unzip/__init__.py:47
Method
postloop
Executed once after the Cmd prompt
NaFlCore/server/CrashDBMaintenance.py:89
Function
pre
This example plugin does not really process the data. It just prints some debug message :param raw_data: file contents :return: unmod
NaFlCore/plugins/example/__init__.py:15
Function
pre
This plugin extracts the contents of a random file within the original Zip file :param raw_data: file contents :return: Extracted dat
NaFlCore/plugins/unzip/__init__.py:26
Method
preloop
Executed once before the Cmd prompt
NaFlCore/server/CrashDBMaintenance.py:82
Function
random_byte_string
Returns a string of random bytes (excluding zero)
NaFlCore/helpers/utils.py:48
Function
random_hexstring
Returns a random hex string
NaFlCore/helpers/utils.py:61
Function
random_int
Convenience function. Returns an integer
NaFlCore/helpers/utils.py:56
Function
random_url
Returns a random URL
NaFlCore/helpers/utils.py:10
Function
rename_file
Just a convenience wrapper
NaFlCore/helpers/fileops.py:82
Function
restore_saved_bitmap
Restore the saved bitmap from a pickle dump to a file (or returns None)
NaFlCore/helpers/fileops.py:102
Function
save_crash_file
Convenience wrapper
NaFlCore/helpers/fileops.py:41
Method
substitute_string
Simple substitution with *standard tokens* This is equivalent to smash the original bytes
NaFlCore/helpers/mutator.py:226
Method
swap_blocks
Just swapping stuff
NaFlCore/helpers/mutator.py:286
next →
1–100 of 110, ranked by callers