Hamid Saeedi

90 papers B 19C 3Journal 55Unranked 13
YearRankTypeTitle / Venue / Authors
2026 C conf
ICCE
Omar Bayzid, Hamid Saeedi
2026 J jnl
IEEE Trans. Wirel. Commun.
Mohammad Reza Abedi, Zahra Rashidi, Nader Mokari, Hamid Saeedi, Nizar Zorba
2025 conf
ICC
Bahareh Jafari, Mazen O. Hasna, Nizar Zorba, Tamer Khattab, Hamid Saeedi
2025 J jnl
IEEE Open J. Commun. Soc.
Bahareh Jafari, Mazen O. Hasna, Hossein Pishro-Nik, Nizar Zorba, Tamer Khattab, Hamid Saeedi
2025 C conf
ICCE
Muna Nasser, Taj Rashid, Abdulla Ghanem, Hamid Saeedi, Hassan Mahasneh
2025 J jnl
IEEE Trans. Commun.
Mina Khadem, Maryam Ansarifard, Nader Mokari, Mohammad Reza Javan, Hamid Saeedi, Eduard A. Jorswieck
2025 J jnl
IEEE Open J. Commun. Soc.
Marziyeh Karkhaneh, Sajedeh Norouzi, Mohammad Reza Abedi, Nader Mokari, Mohammad Reza Javan, Hamid Saeedi, Eduard A. Jorswieck
2025 J jnl
IEEE Trans. Veh. Technol.
Mohammad Reza Abedi, Nader Mokari, Mohammad Reza Javan, Hamid Saeedi, Eduard A. Jorswieck, Nizar Zorba
2025 B conf
GLOBECOM
Mohsen Tajallifar, Nizar Zorba, Hamid Saeedi, Nader Mokari
2025 J jnl
CoRR
Mohammad Reza Abedi, Zahra Rashidi, Nader Mokari, Hamid Saeedi, Nizar Zorba
2024 B conf
WCNC
Mahyar Ghasedi, Paeiz Azmi, MohammadReza Yari, Ali Kuhestani, Hamid Saeedi
2024 J jnl
IEEE Trans. Veh. Technol.
Maryam Ansarifard, Nader Mokari, Mohammad Reza Javan, Hamid Saeedi, Eduard A. Jorswieck
2024 B conf
WCNC
Mina Khadem, Farshad Zeinali, Nader Mokari, Hamid Saeedi
2024 J jnl
CoRR
Mina Khadem, Farshad Zeinali, Nader Mokari, Hamid Saeedi
2024 B conf
WCNC
Hossein Khodi, Paeiz Azmi, Nader Mokari, Mohammad Reza Javan, Hamid Saeedi, Murat Uysal
2024 B conf
GLOBECOM
Bahareh Jafari, Mazen O. Hasna, Hossein Pishro-Nik, Nizar Zorba, Tamer Khattab, Hamid Saeedi
2024 J jnl
Int. J. Comput. Intell. Appl.
Shima Abedian, Ghasem Sadeghi Bajestani, Hamid Saeedi, Fatemeh Makhloughi
2024 J jnl
CoRR
Sajedeh Norouzi, N. Azarasa, Mohammad Reza Abedi, Nader Mokari, S. E. Seyedabrishami, Hamid Saeedi, Eduard A. Jorswieck
2024 J jnl
IEEE Trans. Netw. Serv. Manag.
Mohammad Reza Abedi, Nader Mokari, Mohammad Reza Javan, Hamid Saeedi, Eduard A. Jorswieck, Halim Yanikomeroglu
2024 conf
VTC Spring
Bahareh Jafari, Hamid Saeedi, Hossein Pishro-Nik
2023 J jnl
CoRR
Maryam Ansarifard, Nader Mokari, Mohammad Reza Javan, Hamid Saeedi, Eduard A. Jorswieck
2023 J jnl
CoRR
Mina Khadem, Maryam Ansarifard, Nader Mokari, Mohammad Reza Javan, Hamid Saeedi, Eduard A. Jorswieck
2023 conf
VTC2023-Spring
Bahareh Jafari, Hamid Saeedi, Saeede Enayati, Hossein Pishro-Nik
2022 J jnl
IEEE Commun. Lett.
Bahareh Jafari, Hamid Saeedi, Saeede Enayati, Hossein Pishro-Nik
2021 J jnl
IEEE Trans. Wirel. Commun.
Mohammadjavad Khosravi, Saeede Enayati, Hamid Saeedi, Hossein Pishro-Nik
2020 conf
VTC Spring
Narges Gholipoor, Saeedeh Parsaeefard, Mohammad Reza Javan, Nader Mokari, Hamid Saeedi, Hossein Pishro-Nik
2020 J jnl
IEEE Trans. Netw. Serv. Manag.
Narges Gholipoor, Hamid Saeedi, Nader Mokari, Eduard A. Jorswieck
2020 J jnl
IEEE Trans. Veh. Technol.
Saeede Enayati, Hamid Saeedi, Hossein Pishro-Nik, Halim Yanikomeroglu
2020 J jnl
IEEE Access
Narges Gholipoor, Saeedeh Parsaeefard, Mohammad Reza Javan, Nader Mokari, Hamid Saeedi, Hossein Pishro-Nik
2019 J jnl
CoRR
Narges Gholipoor, Saeedeh Parsaeefard, Mohammad Reza Javan, Nader Mokari, Hamid Saeedi
2019 J jnl
CoRR
Narges Gholipoor, Hamid Saeedi, Nader Mokari, Eduard A. Jorswieck
2019 J jnl
CoRR
Mohammad Moltafet, Atefeh Rezaei, Nader Mokari, Mohammad Reza Javan, Hamid Saeedi, Hossein Pishro-Nik
2019 J jnl
IEEE Trans. Wirel. Commun.
Saeede Enayati, Hamid Saeedi, Hossein Pishro-Nik, Halim Yanikomeroglu
2019 J jnl
CoRR
Mohammadjavad Khosravi, Hamid Saeedi, Hossein Pishro-Nik
2019 conf
IWCIT
Fariba Jamali, Mohammad Javad Emadi, Hamid Saeedi
2019 J jnl
IEEE Access
Aditya S. Rajasekaran, Monirosharieh Vameghestahbanati, Mohammad Farsi, Halim Yanikomeroglu, Hamid Saeedi
2019 J jnl
CoRR
Narges Gholipoor, Saeedeh Parsaeefard, Mohammad Reza Javan, Nader Mokari, Hamid Saeedi, Hossein Pishro-Nik
2018 J jnl
IEEE Access
Mohammad Moltafet, Nader Mokari, Mohammad Reza Javan, Hamid Saeedi, Hossein Pishro-Nik
2018 conf
WCNC Workshops
Narges Gholipoor, Hamid Saeedi, Nader Mokari
2018 J jnl
IET Commun.
Mohamad Khas, Hamid Saeedi, Reza Asvadi
2018 J jnl
IEEE Commun. Lett.
Milad Dabiri, Hamid Saeedi
2018 J jnl
Phys. Commun.
Mohammad Reza Abedi, Nader Mokari, Hamid Saeedi
2018 B conf
WCNC
Arman Azizi, Nader Mokari, Saeede Enayati, Hossein Pishro-Nik, Hamid Saeedi
2018 B conf
ISIT
Saeede Enayati, Hamid Saeedi, Hossein Pishro-Nik
2017 J jnl
CoRR
Nader Mokari, Mohammad Reza Javan, Mohammad Moltafet, Hamid Saeedi, Hossein Pishro-Nik
2017 J jnl
CoRR
Mohamad Khas Mohamadi, Hamid Saeedi, Reza Asvadi
2017 B conf
ISIT
Mohamad Khas, Hamid Saeedi, Reza Asvadi
2017 B conf
PIMRC
Mohammad Moltafet, Nader Mokari, Mohammad R. Javan, Hamid Saeedi, Hossein Pishro-Nik
2017 J jnl
IEEE Trans. Wirel. Commun.
Mohammad Reza Abedi, Nader Mokari, Hamid Saeedi, Halim Yanikomeroglu
2016 J jnl
IEEE Commun. Lett.
Saeede Enayati, Hamid Saeedi
2016 J jnl
IEEE Commun. Lett.
Hossein Mani, Hamid Saeedi
2016 B conf
WCNC
Behzad Khamidehi, Maryam Sabbaghian, Hamid Saeedi
2016 J jnl
IEEE Trans. Mob. Comput.
Nader Mokari, Saeedeh Parsaeefard, Paeiz Azmi, Hamid Saeedi, Ekram Hossain
2015 conf
VTC Fall
Maryam Sabbaghian, Arash Ebadi-Shahrivar, Hamid Saeedi
2015 J jnl
IET Commun.
Faezeh Alavi, Hamid Saeedi
2015 J jnl
IEEE Trans. Signal Process.
Nader Mokari, Saeedeh Parsaeefard, Hamid Saeedi, Paeiz Azmi, Ekram Hossain
2015 conf
VTC Fall
Mohammad Reza Abedi, Nader Mokari, Hamid Saeedi, Halim Yanikomeroglu
2015 conf
ICC Workshops
Mohammad Reza Abedi, Nader Mokari, Hamid Saeedi, Halim Yanikomeroglu
2015 conf
IWOW
Saeede Enayati, Hamid Saeedi, Nader Mokari
2014 J jnl
IEEE Trans. Wirel. Commun.
Nader Mokari, Saeedeh Parsaeefard, Hamid Saeedi, Paeiz Azmi
2014 B conf
WCNC
Nader Mokari, Mohammad Reza Abedi, Hamid Saeedi, Paeiz Azmi
2014 J jnl
IEEE J. Sel. Areas Commun.
Nader Mokari, Hamid Saeedi, Paeiz Azmi
2014 J jnl
IEEE Trans. Veh. Technol.
Nader Mokari, Paeiz Azmi, Hamid Saeedi
2014 B conf
WCNC
Hossein Mani, Nader Mokari, Mohammad Ghadir Khoshkholgh, Hamid Saeedi
2013 J jnl
IET Commun.
Mohammad Ali Sedaghat, S. Alireza Nezamalhosseini, Hamid Saeedi, Farrokh Marvasti
2013 J jnl
IEEE Commun. Lett.
Nader Mokari, Hamid Saeedi, Keivan Navaie
2013 conf
IWCIT
Sadjad Haddadi, Hamid Saeedi, Keivan Navaie
2013 J jnl
IEEE Commun. Lett.
Sadjad Haddadi, Hamid Saeedi, Keivan Navaie
2013 J jnl
IEEE Trans. Wirel. Commun.
Nader Mokari, Paeiz Azmi, Hamid Saeedi
2012 B conf
ISIT
A. Makhdoumi Kakhaki, H. Karkeh Abadi, Pedram Pad, Hamid Saeedi, Farokh Marvasti, Kasra Alishahi
2012 J jnl
IEEE Trans. Commun.
Reza Asvadi, Amir H. Banihashemi, Mahmoud Ahmadian-Attari, Hamid Saeedi
2012 B conf
ISIT
Hosein Mamani, Hamid Saeedi, Ali Eslami, Hossein Pishro-Nik
2012 C conf
ISCC
Nader Mokari, Keivan Navaie, Hamid Saeedi
2011 J jnl
CoRR
A. Makhdoumi Kakhaki, H. Karkeh Abadi, Pedram Pad, Hamid Saeedi, Kasra Alishahi, Farokh Marvasti
2011 J jnl
CoRR
Reza Asvadi, Amir H. Banihashemi, Mahmoud Ahmadian-Attari, Hamid Saeedi
2011 B conf
GLOBECOM
Reza Asvadi, Amir H. Banihashemi, Mahmoud Ahmadian-Attari, Hamid Saeedi
2011 J jnl
IEEE Trans. Commun.
Hamid Saeedi, Hossein Pishro-Nik, Amir H. Banihashemi
2010 J jnl
IEEE Trans. Inf. Theory
Hamid Saeedi, Amir H. Banihashemi
2010 J jnl
IEEE Trans. Commun.
Hamid Saeedi, Amir H. Banihashemi
2010 J jnl
IEEE Trans. Commun.
Hamid Saeedi, Amir H. Banihashemi
2009 J jnl
IEEE Trans. Commun.
Hamid Saeedi, Amir H. Banihashemi
2009 B conf
ITW
Hamid Saeedi, Hossein Pishro-Nik
2009 conf
Allerton
Hamid Saeedi, Hossein Pishro-Nik, Amir H. Banihashemi
2008 J jnl
CoRR
Hamid Saeedi, Amir H. Banihashemi
2008 B conf
ISIT
Hamid Saeedi, Amir H. Banihashemi
2007 B conf
GLOBECOM
Hamid Saeedi, Amir H. Banihashemi
2007 J jnl
IEEE Trans. Commun.
Hamid Saeedi, Amir H. Banihashemi
2006 conf
VTC Fall
Maryam Sabbaghian, David D. Falconer, Hamid Saeedi
2003 B conf
WCNC
Hamid Saeedi, Paeiz Azmi, Farokh Marvasti
2002 J jnl
IEEE Commun. Lett.
Hamid Saeedi, Masoud Sharif, Farokh Marvasti
Docker-README.md
← Index Docker-README.md markdown
# REDB Docker Setup

This document describes the Docker containerization for the REDB malware analysis framework.

## Overview

REDB has been containerized as a single unified image that supports both feature extraction and decompilation analysis. The container is stateless, processes files from S3 or local mounts, and exports results to ClickHouse database or via API callbacks.

## Architecture

- **Single Unified Container**: One image handles both feature extraction and decompilation
- **Runtime Tool Installation**: Tools (CAPA, DIE, Binary Ninja) installed at runtime from host snapshots
- **Stateless Processing**: No persistent storage required between runs
- **Multiple Invocation Modes**: Supports `--nomad-job`, `--s3`, `--s3-solo`, and `--path` modes
- **External Dependencies**: Connects to external ClickHouse and S3 services

## Files Structure

```
├── Dockerfile                 # Single unified container definition
├── docker-build.sh            # Build script with Docker Desktop bug workaround
├── docker-push.sh             # Push script to registry
├── test-docker.sh             # Container testing script
├── test-nomad.sh              # Nomad job mode testing
├── .dockerignore              # Build context exclusions
└── scripts/
    └── setup-and-run.sh       # Runtime tool setup entrypoint
```

## Tool Installation Strategy

The container uses a **runtime installation** approach:

1. **Base Image**: Contains Python dependencies and REDB code
2. **Runtime Setup**: `scripts/setup-and-run.sh` configures tools at container start
3. **Host Snapshots**: Binary Ninja installed from `/opt/binaryninja` if available
4. **System Tools**: CAPA and DIE expected at `/usr/bin/capa` and `/usr/bin/nfdc`

## Build and Run

### 1. Build Container

```bash
# Build unified image
./docker-build.sh

# Manual build
docker build --platform linux/amd64 -f Dockerfile -t redb:latest .
```

### 2. Run Modes

#### Nomad Job Mode (Primary)
```bash
# Feature extraction
docker run --rm \
  -e JOB_ID="analysis_001" \
  -e S3_KEY="samples/malware.exe" \
  -e S3_BUCKET="malware-bucket" \
  -e WORKER_TYPE="feature_extraction" \
  -e CALLBACK_URL="https://api.example.com/callbacks" \
  -e ANALYSIS_MODULES="BasicPropertiesExtractor,PEFeaturesExtractor" \
  -e CLICKHOUSE_HOST="clickhouse.example.com" \
  -e S3_ENDPOINT="s3.example.com" \
  -e S3_ACCESS_KEY="your-key" \
  -e S3_SECRET_KEY="your-secret" \
  redb:latest python3 start.py --nomad-job

# Decompilation (same container, different flags)
docker run --rm \
  -e JOB_ID="analysis_002" \
  -e S3_KEY="samples/malware.exe" \
  -e S3_BUCKET="malware-bucket" \
  -e WORKER_TYPE="decompilation" \
  -e CALLBACK_URL="https://api.example.com/callbacks" \
  -e ANALYSIS_MODULES="all" \
  -v /opt/binaryninja:/opt/binaryninja:ro \
  redb:latest python3 start.py --nomad-job --decompile
```

#### S3 Solo Mode
```bash
# Process single sample by S3 key (standard sharded path)
docker run --rm \
  -e S3_BUCKET="samples-bucket" \
  -e CLICKHOUSE_HOST="clickhouse.example.com" \
  -e S3_ENDPOINT="s3.example.com" \
  -e INDEX_PREFIX="redb" \
  -e REPO="test-analysis" \
  redb:latest python3 start.py --s3-solo "09/f7/09f7d02a3c2382199458c98a62b045145ee54ab6aba86166aecf3d10c3c1444c.zip"

# Process private sample (with prepath)
docker run --rm \
  -e S3_BUCKET="samples-bucket" \
  -e CLICKHOUSE_HOST="clickhouse.example.com" \
  -e S3_ENDPOINT="s3.example.com" \
  -e INDEX_PREFIX="redb" \
  -e REPO="test-analysis" \
  redb:latest python3 start.py --s3-solo "private/ab/cd/abcd1234567890abcdef1234567890abcdef1234567890abcdef123456.zip"
```

#### Local Files Mode
```bash
# Mount local samples
docker run --rm \
  -v /path/to/samples:/samples:ro \
  -v ./logs:/app/logs \
  -e CLICKHOUSE_HOST="clickhouse.example.com" \
  redb:latest python3 start.py --path /samples --repo local_test --index_prefix redb
```

## Environment Variables

### Required for Nomad Job Mode
- `JOB_ID` - Unique job identifier
- `S3_KEY` - S3 object key for sample
- `S3_BUCKET` - S3 bucket name
- `WORKER_TYPE` - "feature_extraction" or "decompilation"
- `CALLBACK_URL` - API endpoint for results
- `ANALYSIS_MODULES` - Comma-separated extractor list or "all"

### Database Configuration
- `CLICKHOUSE_HOST` - ClickHouse server hostname
- `CLICKHOUSE_PORT` - Port (default: 8123)
- `CLICKHOUSE_USER` - Database user (default: default)
- `CLICKHOUSE_PASSWORD` - Database password
- `CLICKHOUSE_DATABASE` - Database name (default: default)

### S3 Configuration
- `S3_ENDPOINT` - S3 endpoint URL
- `S3_ACCESS_KEY` - S3 access key
- `S3_SECRET_KEY` - S3 secret key
- `S3_SECURE` - "true" or "false" for HTTPS

### Processing Configuration
- `INDEX_PREFIX` - Database table prefix (default: redb)
- `REPO` - Repository identifier for this analysis batch
- `BATCH_SIZE` - Processing batch size (default: 10)
- `REDB_TIMEOUT` - Analysis timeout in seconds (default: 300)

### Tool Timeouts
- `CAPA_TIMEOUT` - CAPA analysis timeout (default: 300)
- `DIE_TIMEOUT` - DIE analysis timeout (default: 180)
- `BINJA_TIMEOUT` - Binary Ninja timeout (default: 1200)
- `DECOMPILE_EXTRACTOR_TIMEOUT` - Decompilation timeout (default: 2580)

## Binary Ninja Setup

For decompilation capabilities, mount Binary Ninja from host:

```bash
# Mount Binary Ninja installation
-v /opt/binaryninja:/opt/binaryninja:ro

# Mount license file
-v /path/to/license.dat:/home/analyzer/.binaryninja/license.dat:ro
```

The container will automatically detect and configure Binary Ninja at runtime.

## Registry Deployment

### Push to Registry
```bash
# Tag and push
./docker-push.sh

# Or manually
docker tag redb:latest your-registry/redb:latest
docker push your-registry/redb:latest
```

### Pull and Run
```bash
docker pull your-registry/redb:latest
docker run your-registry/redb:latest python3 start.py --nomad-job
```

## Testing

### Container Functionality Test
```bash
# Test with S3 key (standard sharded path)
./test-docker.sh "09/f7/09f7d02a3c2382199458c98a62b045145ee54ab6aba86166aecf3d10c3c1444c.zip"

# Test with private sample S3 key
./test-docker.sh "private/ab/cd/abcd1234567890abcdef1234567890abcdef1234567890abcdef123456.zip"
```

### Nomad Job Architecture Test
```bash
# Test Nomad job mode
./test-nomad.sh
```

## Development

### Interactive Container
```bash
# Debug container interactively
docker run -it --entrypoint /bin/bash redb:latest

# Check tool availability
docker run --rm redb:latest which python3
docker run --rm redb:latest ls -la /usr/bin/capa
```

### Build Troubleshooting

The build script includes workarounds for Docker Desktop bugs:

```bash
# If build hangs at "exporting to image", press Ctrl+C
# The image will still be created and tagged automatically
./docker-build.sh
```

### Container Logs
```bash
# View logs from mounted directory
docker run -v ./logs:/app/logs redb:latest python3 start.py --path /samples
tail -f logs/*.txt
```

## Production Notes

### Resource Requirements
- **Memory**: 2-4GB recommended (8GB for decompilation)
- **CPU**: 2+ cores recommended
- **Disk**: Minimal (stateless container)
- **Network**: Access to ClickHouse and S3 services

### Security
- Container runs as non-root user `analyzer` (UID 1000)
- Sample files should be mounted read-only
- No persistent state between container runs
- Isolated processing environment for malware analysis

### Deployment Architecture

This container is designed for:
- **Nomad job dispatch**: Single-use containers processing one sample each
- **Kubernetes jobs**: Batch processing with external orchestration
- **CI/CD pipelines**: Automated analysis in build systems
- **Development**: Local testing and debugging

The unified container approach means the same image handles both feature extraction and decompilation - the difference is only in the command-line flags used when starting the container.