V. Richard Benjamins

73 papers A* 2A 2B 11C 3Misc 3Journal 23Unranked 17
YearRankTypeTitle / Venue / Authors
2015 ed.
ISWC (Industry Track)
Axel Polleres, Alexander García Castro, V. Richard Benjamins
2014 conf
WIMS
V. Richard Benjamins
2014 conf
ISWC (Industry Track)
V. Richard Benjamins, David Cadenas, Pedro Alonso, Antonio S. Valderrabanos, Josu Gómez
2013 J jnl
Int. J. Hum. Comput. Stud.
V. Richard Benjamins
2013 B ed.
K-CAP
V. Richard Benjamins, Mathieu d'Aquin, Andrew Gordon
2011 ch.
Handbook of Semantic Web Technologies
V. Richard Benjamins, Mark Radoff, Mike Davis, Mark Greaves, Rose Lockwood, Jesús Contreras
2010 J jnl
Int. J. Hum. Comput. Stud.
José Manuél Gómez-Pérez, Michael Erdmann, Mark Greaves, Óscar Corcho, V. Richard Benjamins
2009 ch.
Semantic Knowledge Management
Pompeu Casanovas, Nuria Casellas, Joan-Josep Vallbé, Marta Poblet, Jesús Contreras, Mercedes Blázquez, V. Richard Benjamins
2008 J jnl
IEEE Intell. Syst.
V. Richard Benjamins, John Davies, Ricardo Baeza-Yates, Peter Mika, Hugo Zaragoza, Mark Greaves, José Manuél Gómez-Pérez, Jesús Contreras, John Domingue, Dieter Fensel
2008 ch.
Ontology Management
José Manuel López Cobo, Silvestre Losada, Laurent Cicurel, José Luis Bas, Sergio Bellido, V. Richard Benjamins
2007 conf
LOAIT
Xavier Binefa, Ciro Gracia, Marius Monton, Jordi Carrabina, Carlos Montero, Javier Serrano, Mercedes Blázquez, V. Richard Benjamins, Emma Teodoro, Marta Poblet, Pompeu Casanovas
2007 ch.
The Semantic Web: Real-World Applications from Industry
José Manuél Gómez-Pérez, V. Richard Benjamins, Mercedes Blázquez, Jesús Contreras, María Fernández, Diego Patón, Luis Rodrigo
2007 J jnl
Artif. Intell. Law
Pompeu Casanovas, Nuria Casellas, Christoph Tempich, Denny Vrandecic, V. Richard Benjamins
2007 ch.
E-Service Intelligence
Óscar Corcho, Silvestre Losada, V. Richard Benjamins, José Luis Bas, Sergio Bellido
2007 C conf
ICAIL
Nuria Casellas, Pompeu Casanovas, Joan-Josep Vallbé, Marta Poblet, Mercedes Blázquez, Jesús Contreras, José Manuel López Cobo, V. Richard Benjamins
2006 J jnl
IEEE Intell. Syst.
V. Richard Benjamins
2006 ed.
ER (Workshops)
John F. Roddick, V. Richard Benjamins, Samira Si-Said Cherfi, Roger H. L. Chiang, Christophe Claramunt, Ramez Elmasri, Fabio Grandi, Hyoil Han, Martin Hepp, Miltiadis D. Lytras, Vojislav B. Misic, Geert Poels, Il-Yeol Song, Juan Trujillo, Christelle Vangenot
2006 conf
DEXA Workshops
Silvestre Losada, Dariusz Kleczek, V. Richard Benjamins, Jesús Contreras, Óscar Corcho, José Luis Bas, Sergio Bellido
2006 conf
ER (Workshops)
Martin Hepp, Miltiadis D. Lytras, V. Richard Benjamins
2006 ed.
OM
Pavel Shvaiko, Jérôme Euzenat, Natalya Fridman Noy, Heiner Stuckenschmidt, V. Richard Benjamins, Michael Uschold
2006 A* conf
WWW
Nigel Shadbolt, Tim Berners-Lee, James A. Hendler, Claire Hart, V. Richard Benjamins
2005 Misc conf
ISWC
Luis Rodrigo, V. Richard Benjamins, Jesús Contreras, Diego Patón, D. Navarro, R. Salla, Mercedes Blázquez, P. Tena, I. Martos
2005 C conf
ICAIL
Pompeu Casanovas, Jesús Gorroñogoitia, Jesús Contreras, Mercedes Blázquez, Nuria Casellas, Joan-Josep Vallbé, Marta Poblet, Francesc Ramos, V. Richard Benjamins
2005 book
Law and the Semantic Web
V. Richard Benjamins, Pompeu Casanovas, Joost Breuker, Aldo Gangemi
2005 J jnl
J. Knowl. Manag.
John Davies, Alistair Duke, Nick Kings, Dunja Mladenic, Kalina Bontcheva, Miha Grcar, V. Richard Benjamins, Jesús Contreras, Mercedes Blázquez Civico, Tim Glover
2005 conf
OTM Workshops
Nuria Casellas, Mercedes Blázquez, Atanas Kiryakov, Pompeu Casanovas, Marta Poblet, V. Richard Benjamins
2005 J jnl
J. Knowl. Manag.
Pompeu Casanovas, Marta Poblet, Nuria Casellas, Jesús Contreras, V. Richard Benjamins, Mercedes Blázquez
2005 Misc ed.
ISWC
Yolanda Gil, Enrico Motta, V. Richard Benjamins, Mark A. Musen
2004 B conf
EKAW
José Manuel López Cobo, Silvestre Losada, Óscar Corcho, V. Richard Benjamins, Marcos Niño
2004 B conf
EKAW
Jesús Contreras, V. Richard Benjamins, Mercedes Blázquez, Silvestre Losada, R. Salla, J. Sevilla, D. Navarro, Joaquín Casillas, A. Mompó, Diego Patón, Óscar Corcho, P. Tena, I. Martos
2004 conf
ESWS
V. Richard Benjamins, Jesús Contreras, Mercedes Blázquez, Juan Manuel Dodero, A. García, Eva Navas, Francisca Hernández, Carlos Wert
2004 conf
ECAI Workshop on Application of Semantic Web Technologies to Web Communities
Jesús Contreras, V. Richard Benjamins, Mercedes Blázquez, Silvestre Losada, R. Salla, J. Sevilla, D. Navarro, Joaquín Casillas, A. Mompó, Diego Patón, Luis Rodrigo, P. Tena, I. Martos
2004 conf
ESWS
Pablo Castells, Ferran Perdrix, E. Pulido, Mariano Rico, V. Richard Benjamins, Jesús Contreras, Jesús Lorés
2004 J jnl
Artif. Intell. Law
V. Richard Benjamins, Jesús Contreras, Pompeu Casanovas, Mercedes Ayuso, Mónica Bécue, Lissette Lemus, Cristina Urios
2004 ed.
SemAnnot@ISWC
Siegfried Handschuh, Thierry Declerck, Marja-Riitta Koivunen, Rose Dieng, V. Richard Benjamins, Steffen Staab
2004 Misc conf
ISWC
José Manuel López Cobo, Silvestre Losada, Óscar Corcho, V. Richard Benjamins, Marcos Niño, Jesús Contreras
2003 conf
AMKM
Juan Manuel Dodero, Sinuhé Arroyo, V. Richard Benjamins
2003 J jnl
Proces. del Leng. Natural
Jesús Contreras, V. Richard Benjamins, Pompeu Casanovas, Lissette Lemus, Cristina Urios
2003 ch.
Law and the Semantic Web
V. Richard Benjamins, Pompeu Casanovas, Jesús Contreras, José Manuel López Cobo, Lissette Lemus
2003 ch.
Law and the Semantic Web
V. Richard Benjamins, Pompeu Casanovas, Joost Breuker, Aldo Gangemi
2003 J jnl
Knowl. Inf. Syst.
Dieter Fensel, Enrico Motta, Frank van Harmelen, V. Richard Benjamins, Monica Crubézy, Stefan Decker, Mauro Gaspari, Rix Groenboom, William E. Grosso, Mark A. Musen, Enric Plaza, Guus Schreiber, Rudi Studer, Bob J. Wielinga
2003 conf
Spinning the Semantic Web
Borys Omelayenko, Monica Crubézy, Dieter Fensel, V. Richard Benjamins, Bob J. Wielinga, Enrico Motta, Mark A. Musen, Ying Ding
2003 J jnl
IEEE Intell. Syst.
Steffen Staab, Wil M. P. van der Aalst, V. Richard Benjamins, Amit P. Sheth, John A. Miller, Christoph Bussler, Alexander Maedche, Dieter Fensel, Dennis Gannon
2002 B ed.
EKAW
Asunción Gómez-Pérez, V. Richard Benjamins
2002 B conf
EKAW
V. Richard Benjamins, José Manuel López Cobo, Jesús Contreras, Joaquín Casillas, Juan Blasco, Blanca de Otto, Juli García, Mercedes Blázquez, Juan Manuel Dodero
1999 J jnl
Int. J. Hum. Comput. Stud.
V. Richard Benjamins, Dieter Fensel, Stefan Decker, Asunción Gómez-Pérez
1999 conf
IWANN (2)
V. Richard Benjamins, Bob J. Wielinga, Jan Wielemaker, Dieter Fensel
1999 J jnl
AI Mag.
Asunción Gómez-Pérez, V. Richard Benjamins
1999 conf
XPS
Rudi Studer, Dieter Fensel, Stefan Decker, V. Richard Benjamins
1999 B conf
EKAW
V. Richard Benjamins, Bob J. Wielinga, Jan Wielemaker, Dieter Fensel
1999 A* conf
IJCAI
Dieter Fensel, V. Richard Benjamins, Enrico Motta, Bob J. Wielinga
1998 J jnl
Int. J. Hum. Comput. Stud.
André Valente, V. Richard Benjamins, Leliane Nunes de Barros
1998 A conf
ECAI
Dieter Fensel, V. Richard Benjamins
1998 J jnl
Int. J. Hum. Comput. Stud.
V. Richard Benjamins, Dieter Fensel
1998 J jnl
Data Knowl. Eng.
Rudi Studer, V. Richard Benjamins, Dieter Fensel
1998 conf
PAKM
V. Richard Benjamins, Dieter Fensel, Asunción Gómez-Pérez
1998 J jnl
Int. J. Hum. Comput. Stud.
V. Richard Benjamins, Nigel Shadbolt
1998 J jnl
Int. J. Intell. Syst.
Dieter Fensel, V. Richard Benjamins
1997 B conf
EKAW
Rodrigo Martínez-Béjar, V. Richard Benjamins, Fernando Martín-Rubio
1997 B ed.
EKAW
Enric Plaza, V. Richard Benjamins
1997 conf
IJCAI
Leliane Nunes de Barros, James A. Hendler, V. Richard Benjamins
1997 J jnl
Int. J. Hum. Comput. Stud.
V. Richard Benjamins, Manfred Aben
1996 B conf
EKAW
V. Richard Benjamins, Manfred Aben
1996 A conf
ECAI
V. Richard Benjamins, Dieter Fensel, Remco Straatman
1996 B conf
EKAW
V. Richard Benjamins, Christine Pierret-Golbreich
1996 conf
AIPS
Leliane Nunes de Barros, André Valente, V. Richard Benjamins
1996 J jnl
Knowl. Eng. Rev.
V. Richard Benjamins, Frank van Harmelen, Niek J. E. Wijngaards
1994 J jnl
Appl. Artif. Intell.
Ameen Abu-Hanna, Wouter N. H. Jansweijer, V. Richard Benjamins, Bob J. Wielinga
1994 B conf
EKAW
V. Richard Benjamins
1994 J jnl
IEEE Expert
V. Richard Benjamins, Wouter N. H. Jansweijer
1992 C conf
ICCI
V. Richard Benjamins, Ameen Abu-Hanna, Wouter N. H. Jansweijer
1991 J jnl
IEEE Expert
Ameen Abu-Hanna, V. Richard Benjamins, Wouter N. H. Jansweijer
1991 conf
SCAI
V. Richard Benjamins, Ameen Abu-Hanna, Wouter N. H. Jansweijer
docs/CODE_ANALYSIS_APPROACH.md
← Index docs/CODE_ANALYSIS_APPROACH.md markdown
# Code Analysis Approach

This document explains the code analysis methodologies used in the REDB malware analysis framework.

## Disassembly Normalization

The framework implements a sophisticated three-level normalization strategy for disassembled code that provides different levels of abstraction for similarity detection and feature extraction.

### Overall Normalization Strategy

The framework implements a **hierarchical abstraction approach** where each instruction is normalized at three different levels simultaneously:

1. **Level 0 (fully_normalized)**: Maximum abstraction - reduces operands to broad categories
2. **Level 1 (api_normalized)**: Medium abstraction - preserves semantic meaning while normalizing details  
3. **Level 2 (category_normalized)**: Minimum abstraction - maintains architectural specificity

This multi-level approach allows analysts to perform similarity analysis at different granularities depending on their specific detection goals.

### Implementation Architecture

The normalization process follows this workflow:

1. **Token Parsing**: Each instruction is parsed from Binary Ninja's instruction tokens to extract the mnemonic and operands
2. **Multi-Level Processing**: Each operand is processed through all three normalization functions
3. **Instruction Reconstruction**: Normalized instructions are rebuilt with the mnemonic plus normalized operands
4. **Control Flow Tagging**: Control flow instructions get a `<TARGET>` suffix for easier pattern matching

### Level 0: Fully Normalized (Maximum Abstraction)

**Purpose**: Creates the most abstract representation for broad pattern detection across different malware families.

**Transformations**:
- **Registers**: All registers normalized to semantic categories via `normalize_register()`:
  - General purpose registers (EAX, EBX, R8, etc.) → `GPR`
  - Stack/Base pointers (ESP, EBP, RSP) → `PTR` 
  - SIMD registers (XMM0, XMM1) → `XMM`
  - FPU registers (ST0, ST1) → `FPU`
- **Memory Operations**: All memory references → `MEM`
- **Constants**: All immediate values → `CONST`  
- **Data References**: All symbols/data references → `DATA_REF`

**Example**:
```
mov eax, [ebp+8]     → MOV GPR MEM
call CreateFileW     → CALL DATA_REF <TARGET>
add ecx, 0x10        → ADD GPR CONST
```

### Level 1: API Normalized (Medium Abstraction)

**Purpose**: Preserves semantic distinctions while normalizing architectural details. Focuses on behavioral patterns and API usage.

**Transformations**:
- **Registers**: Categorized by functional role:
  - Data registers → `GPR_DATA`
  - Index registers (ESI, EDI) → `GPR_INDEX`  
  - Stack registers (ESP, EBP) → `GPR_STACK`
  - SIMD registers → `XMM_REG`
- **Memory Operations**: Classified by access pattern:
  - Stack access → `MEM_STACK`
  - String operations → `MEM_STRING` 
  - General access → `MEM_GENERAL`
- **Constants**: Categorized by range:
  - Small constants (-16 to 16) → `CONST_{value}`
  - Large constants → `CONST_LARGE`
- **API Calls**: Resolved to specific API names:
  - `CreateFileW` → `API_CreateFileW`
  - Other symbols → `DATA_SYM`

**Example**:
```
mov eax, [ebp+8]     → MOV GPR_DATA MEM_STACK
call CreateFileW     → CALL API_CreateFileW <TARGET>
add ecx, 0x10        → ADD GPR_DATA CONST_LARGE
```

### Level 2: Category Normalized (Minimum Abstraction)

**Purpose**: Maintains architectural specificity while normalizing specific values. Best for detecting variants with similar implementation details.

**Transformations**:
- **Registers**: Architecture-specific categories:
  - 64-bit registers → `REG_64`, with special cases for `REG_64_SP`, `REG_64_BP`
  - 32-bit registers → `REG_32`
  - 16/8-bit registers → `REG_16_8`
- **Memory Operations**: Detailed addressing mode classification:
  - Complex addressing → `MEM_SCALED_INDEX`
  - Base + offset → `MEM_BASE_OFFSET`
  - Direct addressing → `MEM_DIRECT`
- **Constants**: Type-specific classification:
  - Hexadecimal → `CONST_HEX`
  - Decimal → `CONST_DEC`
- **API Calls**: Categorized by functional group:
  - File operations → `API_FILE_OP`
  - Memory operations → `API_MEMORY_OP`
  - Network operations → `API_NETWORK_OP`

**Example**:
```
mov eax, [ebp+8]     → MOV REG_32 MEM_BASE_OFFSET
call CreateFileW     → CALL API_FILE_OP <TARGET>
add ecx, 0x10        → ADD REG_32 CONST_HEX
```

### Key Features and Benefits

#### 1. Multi-Granularity Similarity Detection
- **Level 0**: Detects broad behavioral patterns across malware families
- **Level 1**: Identifies API usage patterns and semantic similarities
- **Level 2**: Finds variants with similar implementation approaches

#### 2. Robust Pattern Matching
- Control flow instructions tagged with `<TARGET>` for easier CFG analysis
- Handles edge cases with fallback mechanisms
- Consistent uppercase normalization prevents case sensitivity issues

#### 3. API-Aware Analysis
The framework includes sophisticated API recognition through the `ApiCategory` enum and resolution methods:
- **File Operations**: CreateFile, ReadFile, WriteFile, etc.
- **Memory Operations**: VirtualAlloc, HeapAlloc, VirtualProtect, etc.  
- **Registry Operations**: RegOpenKey, RegSetValue, etc.
- **Network Operations**: WSASocket, send, recv, etc.
- **Process Operations**: CreateProcess, OpenProcess, etc.

#### 4. Scalable Feature Extraction
Each level produces different hash values for the same function:
- `fully_normalized_disassembly_hash`
- `api_normalized_disassembly_hash`  
- `category_normalized_disassembly_hash`

This enables efficient similarity searches at different abstraction levels in the ClickHouse database.

### Practical Applications for Malware Analysis

#### Threat Hunting Scenarios:

1. **Family Detection** (Level 0): Find samples using similar algorithmic approaches regardless of specific implementation
2. **Variant Analysis** (Level 1): Identify samples with similar API usage patterns and behavioral semantics
3. **Code Reuse Detection** (Level 2): Discover samples sharing specific implementation techniques or code fragments

#### Similarity Metrics Integration:
- Each normalization level can be used with different fuzzy hashing algorithms (ssdeep, TLSH, etc.)
- Level 0 works well with structural similarity metrics
- Level 1 optimal for behavioral similarity analysis  
- Level 2 suitable for implementation-specific pattern matching

This three-tiered approach provides malware analysts with flexible tools for detecting similarities across the threat landscape while maintaining the precision needed for detailed variant analysis.



---

*More code analysis approaches will be documented in additional sections as they are implemented.*