Skip to content

Commit 6ee57d6

Browse files
committed
Track obfuscation via function calls
1 parent a759aa9 commit 6ee57d6

File tree

19 files changed

+457
-348
lines changed

19 files changed

+457
-348
lines changed

Cargo.lock

Lines changed: 0 additions & 47 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/hexora/Cargo.toml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ pyo3 = { version = "0.26", features = ["extension-module"], optional = true }
3838
log = "0.4.28"
3939
env_logger = "0.11.8"
4040
serde = { version = "1.0.228", features = ["derive"] }
41-
itertools = "0.14.0"
4241
once_cell = "1.21.3"
4342
regex = "1.11.2"
4443
test-case = "3.3.1"
@@ -50,7 +49,6 @@ strum_macros = "0.27.2"
5049
serde_json = "1.0.145"
5150
pythonize = "0.26.0"
5251
sha2 = "0.11.0-rc.2"
53-
rayon = "1.10.0"
5452
encoding_rs = "0.8.35"
5553
hexora_io = { path = "../hexora_io" }
5654

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
def doit(m, f1, f2):
2+
import importlib
3+
4+
module = importlib.import_module(m)
5+
function_name = f1 + f2
6+
function = getattr(module, function_name)
7+
return function
8+
9+
10+
username = doit("os", "getl", "ogin")()
11+
host = doit("socket", "getho", "stbyname")(doit("socket", "getho", "stname")())
12+
pwd = doit("os", "getc", "wd")()

crates/hexora/src/audit/parse.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ fn audit_source(source: String) -> Result<Vec<AuditItem>, String> {
7171
let transformer = NodeTransformer::new(&locator, indexer);
7272
transformer.visit_body(&mut transformed_ast);
7373

74-
let mut indexer = transformer.indexer.into_inner();
74+
let mut indexer = transformer.indexer;
7575
indexer.clear_state();
7676
let mut checker = Checker::new(&locator, indexer);
7777
checker.check_comments();

crates/hexora/src/indexer/checker.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ use ruff_python_ast::visitor::Visitor;
88
use ruff_python_ast::{self as ast, Expr, Stmt};
99

1010
pub struct Checker<'a> {
11-
pub imports: Vec<&'a Stmt>,
1211
pub audit_results: Vec<AuditItem>,
1312
pub locator: &'a Locator<'a>,
1413
pub indexer: NodeIndexer<'a>,
@@ -17,7 +16,6 @@ pub struct Checker<'a> {
1716
impl<'a> Checker<'a> {
1817
pub fn new(locator: &'a Locator, indexer: NodeIndexer<'a>) -> Self {
1918
Self {
20-
imports: Vec::new(),
2119
audit_results: Vec::new(),
2220
locator,
2321
indexer,

0 commit comments

Comments
 (0)