Commit graph

238 commits

Author SHA1 Message Date
8ef72113f2 Add code review suggestions
- add a TODO for better exception handling
- deduplicate the new parser code
- parse binary plist trailer for finding exact size
2026-03-03 19:47:10 +05:30
2e31f1ebae Add certs, layouts, and tests 2026-03-03 19:18:07 +05:30
c27ce72157 Add QS Mach-O parsing and samples 2026-03-02 16:00:23 +05:30
Willi Ballenthin
a7f5c268d7 qs: refactor OffsetRanges into dataclass 2026-01-13 13:04:31 +01:00
0xRavenspar
8c4a8def3d fix strings type hints and bugs 2026-01-12 08:45:58 +00:00
Moritz
abeb49cd0c
Improve performance around code ranges and add tests (#1162)
* enhancements and tests

* add more qs tests

* refactor range calculations and add tests

* add CI testing for quantumstrand

* add testfiles and update reference
2026-01-12 09:27:19 +01:00
mr-tz
85884e92c7 cleanup and add more metadata 2025-07-10 09:11:00 +00:00
mr-tz
05dac6205e enhance results document 2025-07-09 06:43:40 +00:00
mr-tz
2223c84eed use Result data for rendering 2025-07-08 12:58:40 +00:00
mr-tz
fb909bc47c Merge branch 'master' into quantumstrand 2025-07-07 10:36:55 +00:00
Ana Maria Martinez Gomez
ab07022ff3
[copyright + license] Fix headers
Replace the header from source code files using the following script:
```Python
for dir_path, dir_names, file_names in os.walk("flare-floss"):
    for file_name in file_names:
        try:
            file_path = f"{dir_path}/{file_name}"
            f = open(file_path, "rb+")
            content = f.read()
            m = re.search(OLD_HEADER, content)
            if not m:
                continue
            print(f"{file_path}: {m.group('year')}")
            content = content.replace(m.group(0), NEW_HEADER % m.group("year"))
            f.seek(0)
            f.write(content)
        except:
            continue
```

Some files had the copyright headers inside a `"""` comment and needed
manual changes before applying the script.

The old header had the confusing sentence `All rights reserved`, which
does not make sense for an open source license. Replace the header by
the default Google header that corrects this issue and keep floss
consistent with other Google projects.
2025-01-14 17:52:22 +01:00
mr-tz
a843fc47ba update testfiles enabling ELF tests 2024-11-12 13:20:42 +00:00
mr-tz
5225981c9a mypy ignore 2024-11-11 16:35:04 +00:00
VeX
5c2d84ef1a
feat: added decoding functions calls (#978)
* add xrefs to decoding functions

---------

Co-authored-by: Moritz <mr-tz@users.noreply.github.com>
2024-03-24 09:48:46 +01:00
psypad
7c32d6438e
changed deprecated functionality (#959)
* changed deprecated fspath mentions

---------

Co-authored-by: SylanPadmakumar <112978372+SylanPadmakumar@users.noreply.github.com>
2024-03-07 09:40:53 +01:00
Moritz
a425a987e0
Update test_language_id.py 2023-11-17 11:15:06 +01:00
mr-tz
2028bf8901 add test of Go sample with stomped PCNLTAB magic bytes 2023-11-16 20:21:49 +01:00
mr-tz
137bb40158 update submodule
update submodule
2023-11-16 20:21:42 +01:00
Moritz
d5662cdb3b
Merge pull request #901 from mr-tz/update-result-json
fix extractions and improve language_strings_missed contents
2023-11-13 11:38:38 +01:00
mr-tz
801559a26e verify user-selected language and warn, include language version in results 2023-11-12 15:37:18 +01:00
mr-tz
72da84d698 pass path argument, of type pathlib.Path, instead of fspath argument 2023-11-10 15:55:01 +01:00
mr-tz
98fbde05a9 enable test 2023-11-09 13:57:14 +01:00
mr-tz
75736b0f20 add test that currently fails 2023-08-28 15:18:47 +02:00
Arnav Kharbanda
692ce71267
Adding tests to ensure >88% string extraction from Unknown Rust binaries #852 (#858)
* Adding tests to ensure >88% string extraction from Unknown go binaries #852
2023-08-24 07:42:58 +02:00
Arnav Kharbanda
2ee4cf5a90
Test the detection of known Rust binaries (#855)
* Test the detection of known Rust binaries

---------

Co-authored-by: Moritz <mr-tz@users.noreply.github.com>
2023-08-23 17:19:12 +02:00
Arnav Kharbanda
567fc95907
Extract Rust specific strings from binaries #791 (#836)
* Initial implementation of Rust specific strings

* Added rust coverage script

* Introduced shared functions into language/utils.py

* Refactored Go and Rust extraction files

* Simplify rust string extraction

* Added push and mov xrefs for i386 arch and test updates

* Add push and mov for amd64

---------

Co-authored-by: Moritz <mr-tz@users.noreply.github.com>
2023-08-23 14:13:04 +02:00
Arnav Kharbanda
b081ccf4cf
Test the detection of known Go binaries (#845)
* Test the detection of known Go binaries

* Combined two pytest fixtures into a single function for extracting files

---------

Co-authored-by: Willi Ballenthin <wballenthin@google.com>
2023-08-09 10:17:50 +02:00
Arker123
048f016ff8 Merge remote-tracking branch 'origin/master' into test-coverage 2023-08-01 18:13:22 +05:30
Willi Ballenthin
7cd67377c3
Merge pull request #838 from Arker123/update-go-extraction
Improve String Extraction in Go Extraction Script for Strings Ending with 0Ah or '\n'
2023-08-01 14:12:15 +02:00
Arker123
496b273232 Tweaks 2023-07-28 22:09:35 +05:30
Arker123
a9b4a5b55b code style 2023-07-28 22:02:35 +05:30
Arker123
f2d5354cca Adding Tests to Ensure >98% String Extraction from Go Binaries 2023-07-28 21:57:50 +05:30
Arker123
fa7bca4b41 Updated comments 2023-07-25 23:33:30 +05:30
Arnav Kharbanda
cb608a1ecd
Update tests/test_language_extract_go.py
Co-authored-by: Moritz <mr-tz@users.noreply.github.com>
2023-07-25 23:29:18 +05:30
Arker123
522682a9c6 Updated language tests 2023-07-21 18:26:20 +05:30
Arker123
5d6664b90b Minor bug 2023-07-21 18:04:12 +05:30
Arker123
98420ca845 Tweaks 2023-07-21 18:00:58 +05:30
Arker123
b8806a35fd update tests 2023-07-21 17:49:50 +05:30
mr-tz
53d95af82f integration tweaks 2023-07-10 23:12:58 +05:30
mr-tz
28b48b195e initial idea to integrate language specific strings 2023-07-04 18:08:26 +02:00
Arker123
13445dfcd2 Fixed Testcases 2023-06-30 18:26:22 +05:30
Arker123
7eeeb385d7 Minor bugs 2023-06-30 18:05:49 +05:30
Arker123
4d17ade8b7 Resolved the bug in testcases 2023-06-28 18:52:57 +05:30
Arker123
4cc8e26568 Merge remote-tracking branch 'origin/master' into go-strings 2023-06-28 17:33:13 +05:30
Willi Ballenthin
702161e979 Merge branch 'master' into quantumstrand 2023-06-27 23:12:44 +02:00
Diego Romeo
79bad31ea2 update code style with appropriate isort options 2023-06-27 21:44:20 +02:00
Diego Romeo
2d634ca84e adjust code style 2023-06-27 16:43:03 +02:00
Diego Romeo
0ec61e980b update type hints, args and return values type 2023-06-27 13:20:54 +02:00
Diego Romeo
30b28134b1 change os.path to pathlib.Path 2023-06-26 20:02:10 +02:00
Arker123
b403beb88b fixed code style and minor fixes 2023-06-24 02:27:46 +05:30