aboutsummaryrefslogtreecommitdiff
path: root/contrib/devtools/security-check.py
AgeCommit message (Collapse)Author
2022-03-28contrib: use LIEF 0.12.0 for symbol and security checksfanquake
2022-01-26contrib: support arm64 darwin in security checksfanquake
2022-01-04scripts: add CONTROL_FLOW to ELF security checksfanquake
2022-01-04script rename control flow check to MACHO specificfanquake
2022-01-03scripts: make security checks architecture independentfanquake
This paves the way for using and checking for architecture dependent flags like -fcf-protection on x86_64 Linux and -mbranch-protection on 64 bit ARM.
2021-12-30scripted-diff: Bump copyright headersHennadii Stepanov
-BEGIN VERIFY SCRIPT- ./contrib/devtools/copyright_header.py update ./ -END VERIFY SCRIPT- Commits of previous years: * 2020: fa0074e2d82928016a43ca408717154a1c70a4db * 2019: aaaaad6ac95b402fe18d019d67897ced6b316ee0
2021-12-18scripts: match on exe type over str in security-check.pyfanquake
2021-11-17scripts: test for PE control flow instrumentationfanquake
2021-10-16lint: enable mypy checking for missing importsjosibake
Achieve this by adding some ignore, and making data/ importable. Co-authored-by: João Barbosa <joao.paulo.barbosa@gmail.com>
2021-10-12scripts: only parse the binary once in security-check.pyfanquake
2021-10-12scripts: use LIEF for ELF checks in security-check.pyfanquake
2021-05-09scripts: test for MACHO control flow instrumentationfanquake
2021-05-04contrib: consolidate PIE and NX security checksfanquake
2021-05-04contrib: add PE PIE check to security checksfanquake
2021-05-04contrib: use LIEF for PE security checksfanquake
2021-05-04contrib: use LIEF for macOS security checksfanquake
2021-05-04contrib: use f strings in security-check.pyfanquake
2020-11-22contrib: Changes to checks for PowerPC64Luke Dashjr
Changes from #14066.
2020-11-22contrib: Parse ELF directly for symbol and security checksWladimir J. van der Laan
Instead of the ever-messier text parsing of the output of the readelf tool (which is clearly meant for human consumption not to be machine parseable), parse the ELF binaries directly. Add a small dependency-less ELF parser specific to the checks. This is slightly more secure, too, because it removes potential ambiguity due to misparsing and changes in the output format of `elfread`. It also allows for stricter and more specific ELF format checks in the future. This removes the build-time dependency for `readelf`. It passes the test-security-check for me locally, though I haven't checked on all platforms.
2020-11-09swapped "is" for "==" in literal comparisonTyler Chambers
update lint-python.sh to include check F632
2020-07-28devtools: Add security check for separate_codeWladimir J. van der Laan
Check that sections are appropriately separated in virtual memory, based on their (expected) permissions. This checks for missing -Wl,-z,separate-code and potentially other problems. Co-authored-by: fanquake <fanquake@gmail.com>
2020-05-14scripts: add additional type annotations to security-check.pyfanquake
2020-05-14scripts: add run_command to security-check.pyfanquake
Deduplicate all the subprocess code as mentioned in 18713.
2020-05-14scripts: remove NONFATAL from security-check.pyfanquake
2020-05-14scripts: no-longer check for 32 bit windows in security-check.pyfanquake
2020-04-23scripts: add PE .reloc section check to security-check.pyfanquake
2020-04-21scripts: add MACHO Canary check to security-check.pyfanquake
2020-04-04scripts: add MACHO lazy bindings check to security-check.pyfanquake
2020-03-26scripts: add MACHO NX check to security-check.pyfanquake
2020-01-15scripted-diff: Bump copyright of files changed in 2020MarcoFalke
-BEGIN VERIFY SCRIPT- ./contrib/devtools/copyright_header.py update ./ -END VERIFY SCRIPT-
2020-01-02scripts: add MACHO NOUNDEFS check to security-check.pyfanquake
2020-01-02scripts: add MACHO PIE check to security-check.pyfanquake
2018-11-30Fix broken Gmane URLsCraig Younkins
2018-08-08Merge #13780: 0.17: Pre-branch maintenanceWladimir J. van der Laan
3fc20632a3ad30809356a58d2cf0ea4a4ad4cec3 qt: Set BLOCK_CHAIN_SIZE = 220 (DrahtBot) 2b6a2f4a28792f2fe9dc1be843b1ff1ecae35e8a Regenerate manpages (DrahtBot) eb7daf4d600eeb631427c018a984a77a34aca66e Update copyright headers to 2018 (DrahtBot) Pull request description: Some trivial maintenance to avoid having to do it again after the 0.17 branch off. (The scripts to do this are in `./contrib/`) Tree-SHA512: 16b2af45e0351b1c691c5311d48025dc6828079e98c2aa2e600dc5910ee8aa01858ca6c356538150dc46fe14c8819ed8ec8e4ec9a0f682b9950dd41bc50518fa
2018-07-27Update copyright headers to 2018DrahtBot
2018-07-26contrib: Fix test-security-check fail in Ubuntu 18.04Chun Kuan Lee
2018-07-12Tools: fix BIND_NOW check in security-check.pyConrado Gouvea
Previously, the BIND_NOW check would work only if it was the first value in FLAGS.
2018-05-11Enable W191 and W291 flake8 checks.John Bampton
Remove trailing whitespace from Python files. Convert tabs to spaces.
2018-03-28[contrib] fixup security-check.py Python3 supportJohn Newbery
2018-03-26Change all python files to use Python3John Newbery
2018-01-03Increment MIT Licence copyright header year on files modified in 2017Akira Takizawa
2017-08-28Use sys.exit(...) instead of exit(...): exit(...) should not be used in programspracticalswift
2016-09-26Merge #8249: Enable (and check for) 64-bit ASLR on WindowsWladimir J. van der Laan
62c2915 build: supply `-Wl,--high-entropy-va` (Wladimir J. van der Laan) 9a75d29 devtools: Check for high-entropy ASLR in 64-bit PE executables (Wladimir J. van der Laan)
2016-09-26devtools: Check for high-entropy ASLR in 64-bit PE executablesWladimir J. van der Laan
check_PE_PIE only checked for DYNAMIC_BASE, this is not enough for (secure) ASLR on 64-bit.
2016-09-11[copyright] add MIT License copyright header to remaining Python filesisle2983
2016-06-28Favour python over python2 as per PR #7723Matthew King
2016-06-26Use portable #! in python scripts (/usr/bin/env)Matthew King
2016-03-29build: python 3 compatibilityWladimir J. van der Laan
Ubuntu 16.04 "xenial xerus" does not come with Python 2.x by default. It is possible to install a python-2.7 package, but this has its own problem: no `python` or `python2` symlink (see #7717). This fixes the following scripts to work with python 3: - `make check` (bctest,py, bitcoin-util-test.py) - `make translate` (extract_strings_qt.py) - `make symbols-check` (symbol-check.py) - `make security-check` (security-check.py) Explicitly call the python commands using $(PYTHON) instead of relying on the interpreter line at the top of the scripts.
2016-01-26release: fix parsing of BIND_NOW with older readelfCory Fields
2016-01-08Fixing typos on security-check.py and torcontrol.cppcalebogden