utils package¶
Submodules¶
utils.util module¶
- class credsweeper.utils.util.DiffRowData(line_type, line_numb, line)[source]¶
Bases:
object
Class for keeping data of diff row.
- class credsweeper.utils.util.Util[source]¶
Bases:
object
Class that contains different useful methods.
- static decode_bytes(content, encodings=('utf8', 'utf16', 'latin_1'))[source]¶
Decode content using different encodings.
Try to decode bytes according to the list of encodings “encodings” occurs without any exceptions. UTF-16 requires BOM
- static get_extension(file_path, lower=True)[source]¶
Return extension of file in lower case by default e.g.: ‘.txt’, ‘.JPG’
- Return type:
- static get_keyword_pattern(keyword, separator='=|:=|:')[source]¶
Returns compiled regex pattern
- Return type:
Pattern
- static get_shannon_entropy(data, iterator)[source]¶
Borrowed from http://blog.dkbza.org/2007/05/scanning-data-for-entropy-anomalies.html.
- Return type:
- static get_xml_data(file_path)[source]¶
Read xml data and return List of str.
Try to read the xml data and return formatted string.
- Parameters:
file_path (
str
) – path of xml file- Returns:
{root.text}”)
- Return type:
List of formatted string(f”{root.tag}
- static is_entropy_validate(data)[source]¶
Verifies data entropy with base64, base36 and base16(hex)
- Return type:
- static is_gzip(data)[source]¶
According https://www.rfc-editor.org/rfc/rfc1952
- Return type:
- static is_zip(data)[source]¶
According https://en.wikipedia.org/wiki/List_of_file_signatures
- Return type:
- static json_dump(obj, file_path, encoding='utf8', indent=4)[source]¶
Write dictionary to json file
- Return type:
- static patch2files_diff(raw_patch, change_type)[source]¶
Generate files changes from patch for added or deleted filepaths.
- Parameters:
- Return type:
- Returns:
return dict with
{file paths: list of file row changes}
, where elements of list of file row changes represented as:{ "old": line number before diff, "new": line number after diff, "line": line text, "hunk": diff hunk number }
- static preprocess_file_diff(changes)[source]¶
Generate changed file rows from diff data with changed lines (e.g. marked + or - in diff).
- Parameters:
- Return type:
- Returns:
diff rows data with as list of row change type, line number, row content
- static read_file(path, encodings=('utf8', 'utf16', 'latin_1'))[source]¶
Read the file content using different encodings.
Try to read the contents of the file according to the list of encodings “encodings” as soon as reading occurs without any exceptions, the data is returned in the current encoding