Commit Graph

357 Commits

Author SHA1 Message Date
REDMOND\brodes
bac0a635f9 Initial hash models for openssl. 2025-03-07 14:24:01 -05:00
REDMOND\brodes
32d29ffde3 Changed casing on TCipherType, Added some initial fixes for hash support, started developing openssl hashing modeling. 2025-03-07 10:02:36 -05:00
REDMOND\brodes
6083df2b7f Completed tying algorithm instances to consumers. Now the model should have known literals for cipher instances, and it traces those instances to consumers (inits) and those inits are traced to cipher operations. 2025-03-05 15:48:08 -05:00
REDMOND\brodes
de3ff45cba Misc updates for OpenSSL modeling to trace algorithm literals to known alg getters, and converting the literal to a TCipherType. 2025-03-05 15:17:52 -05:00
REDMOND\brodes
cce5f24b38 Initial OpenSSL modeling work. 2025-03-04 15:52:57 -05:00
Nicolas Will
b777a22d35 Expand model and specialize newtype relations 2025-02-14 23:43:07 +01:00
Nicolas Will
874e3b5e06 Modify model to use newtypes, expand modeling 2025-02-12 17:58:15 +01:00
Nicolas Will
3dc28c2d17 Move language-agnostic model to shared library 2025-02-06 21:54:18 +01:00
Nicolas Will
cd70acde66 Merge pull request #1 from nicolaswill/brodes/experiments
Concepts for elliptic curves and misc. updates.
2025-02-06 14:43:09 +01:00
Nicolas Will
9af18bc100 WIP: add dgml/dot output/remove test code 2025-01-29 19:45:04 +01:00
REDMOND\brodes
0cd3df9d26 Concepts for elliptic cureve and misc. updates. 2025-01-29 10:27:46 -05:00
Mathias Vorreiter Pedersen
38b66e5a8e C++: Fix a few type errors. 2025-01-28 14:08:12 +00:00
Nicolas Will
e027b0e9a0 WIP: add properties 2025-01-28 02:02:06 +01:00
Nicolas Will
78362341ff WIP: hash types example and documentation 2025-01-24 22:32:32 +01:00
Nicolas Will
1a7d8cb99d WIP 2025-01-24 17:33:03 +01:00
Nicolas Will
395d54bf86 Create Base.qll 2025-01-23 12:46:09 +01:00
erik-krogh
0fdd06fff5 use my script to delete outdated deprecations 2024-09-03 20:30:58 +02:00
Josh Brown
de2e8b0b12 explicit "this" qualifiers 2023-10-03 16:13:54 -07:00
Josh Brown
ad86e576a4 autoformat 2023-10-03 13:40:17 -07:00
Benjamin Rodes
50db4fd63e Moved Cpp into sub directory 'cryptography' instead of crypto. Added python models, inventory, and example alerts. 2023-09-21 12:12:15 -07:00
Benjamin Rodes
7560db66fa incorrect import path 2023-09-21 12:12:15 -07:00
Benjamin Rodes
7256faa7eb Added modeling infrastructure 2023-09-21 12:12:15 -07:00
Mathias Vorreiter Pedersen
81dbfecbfc C++: Promote the product-dataflow library out of experimental. 2023-05-23 09:48:50 -07:00
Mathias Vorreiter Pedersen
06d5a7f0ef Merge pull request #13139 from MathiasVP/faster-product-flow
C++: Speedup product dataflow
2023-05-17 13:40:39 +01:00
Jeroen Ketema
883ec7a0e9 C++: Add forgotten private specifiers in product flow 2023-05-17 11:24:46 +02:00
Mathias Vorreiter Pedersen
e1cc7dcdc1 C++: Tweak join orders. 2023-05-12 16:12:15 +01:00
Mathias Vorreiter Pedersen
3f01a2157b Revert "C++: Speedup 'isSuccessor'."
This reverts commit 594da1a21a.
2023-05-12 13:41:34 +01:00
Mathias Vorreiter Pedersen
2458fa0ab3 C++: Push conjunct into 'isSuccessor' and rename it to 'fwdIsSuccessor'. 2023-05-12 12:50:40 +01:00
Mathias Vorreiter Pedersen
594da1a21a C++: Speedup 'isSuccessor'. 2023-05-12 12:05:09 +01:00
Mathias Vorreiter Pedersen
e58b99ddd1 C++: Don't carry the sources around as columns during the main loop of product flow. 2023-05-12 11:58:43 +01:00
Jeroen Ketema
a5c7d09702 C++: Fix the location of order-by in experimental RangeNode 2023-05-10 09:50:10 +02:00
Kasper Svendsen
c46898cb75 C++: Make implicit this receivers explicit 2023-05-09 15:35:54 +02:00
Mathias Vorreiter Pedersen
26206a85dc C++: Properly handle setter-related flow in IPA injector. 2023-05-04 14:00:17 +01:00
Mathias Vorreiter Pedersen
d3d706d9ab C++: Fix accidental cartesian product. 2023-05-04 09:59:16 +01:00
Mathias Vorreiter Pedersen
0d6fdc674b C++: Also account for setter-related flow and jump steps. 2023-05-03 15:47:12 +01:00
Mathias Vorreiter Pedersen
7fa6894aaf C++: Ensure that product dataflow library enters/leaves through the same call. 2023-05-02 17:13:36 +01:00
Jeroen Ketema
12702b59d3 C++: Fix deprecation warning 2023-04-06 17:13:15 +02:00
Jeroen Ketema
9123657fd2 C++: Update product flow to match data flow naming 2023-04-06 17:13:12 +02:00
Jeroen Ketema
a38c3171dd C++: Use Unit instead of string in product flow 2023-04-06 17:11:56 +02:00
Jeroen Ketema
9b89a303ef C++: Simplify the flow-state-less product flow module 2023-04-06 17:11:32 +02:00
Jeroen Ketema
4e12924521 C++: Refactor ProductFlow to have a DataFlow::ConfigSig-like interface 2023-04-06 17:10:40 +02:00
Mathias Vorreiter Pedersen
f6e774ed2e C++: Alias the experimental 'Bound.qll' with the non-experimental one. 2023-04-03 18:18:33 +01:00
Mathias Vorreiter Pedersen
4c5ca082ce C++: Delete the experimental range-analysis library. 2023-04-03 13:53:43 +01:00
Mathias Vorreiter Pedersen
9a34a7b7cc Merge pull request #12719 from jketema/typebound-size 2023-04-03 08:31:41 +01:00
Jeroen Ketema
8d9b96b776 C++: Drop the bit size restriction in typeBound and use float 2023-03-31 14:36:11 +02:00
Geoffrey White
cc841a68f6 Merge pull request #11921 from gsingh93/range-node
C++: Add RangeNode class
2023-03-31 13:22:19 +01:00
Robert Marsh
d03dd49904 Merge pull request #12622 from MathiasVP/skip-safe-conversions-in-range-analysis
C++: Range analysis on `EquivalenceClass`es
2023-03-30 10:08:59 -04:00
Jeroen Ketema
9173e08805 Merge pull request #12714 from jketema/rem-cleanup
C++: Match `SemZeroBound` handling of mul case in rem case
2023-03-30 14:25:20 +02:00
Mathias Vorreiter Pedersen
4043aa976d Merge branch 'main' into skip-safe-conversions-in-range-analysis 2023-03-30 11:24:27 +01:00
Mathias Vorreiter Pedersen
d9b2a72232 C++: Ensure that equiv instructions are in the same block. 2023-03-30 11:22:24 +01:00