Chang Yao

57 papers A* 17A 1B 2Journal 27Unranked 10
YearRankTypeTitle / Venue / Authors
2026 A* conf
AAAI
Zhenlong Dai, Zhuoluo Zhao, Hengning Wang, Xiu Tang, Sai Wu, Chang Yao, Zhipeng Gao, Jingyuan Chen
2026 J jnl
CoRR
Zhenlong Dai, Zhuoluo Zhao, Hengning Wang, Xiu Tang, Sai Wu, Chang Yao, Zhipeng Gao, Jingyuan Chen
2026 J jnl
IEEE Trans. Knowl. Data Eng.
Xu Gao, Xiu Tang, Chang Yao, Sai Wu, Gongsheng Yuan, Wenchao Zhou, Feifei Li, Gang Chen
2025 J jnl
Proc. VLDB Endow.
Wenhao Liu, Xiu Tang, Sai Wu, Chang Yao, Gongsheng Yuan, Gang Chen
2025 J jnl
Data Sci. Eng.
Meng Shi, Sai Wu, Ying Li, Gongsheng Yuan, Chang Yao, Gang Chen
2025 J jnl
IEEE Trans. Knowl. Data Eng.
Yuren Mao, Yu Hao, Xin Cao, Yunjun Gao, Chang Yao, Xuemin Lin
2025 J jnl
CoRR
Qihan Huang, Long Chan, Jinlong Liu, Wanggui He, Hao Jiang, Mingli Song, Jingyuan Chen, Chang Yao, Jie Song
2025 conf
ACL (Findings)
Yiyun Zhou, Chang Yao, Jingyuan Chen
2025 J jnl
CoRR
Yiyun Zhou, Chang Yao, Jingyuan Chen
2025 J jnl
Proc. VLDB Endow.
Xuhang Zhu, Xiu Tang, Sai Wu, Jichen Li, Haobo Wang, Chang Yao, Quanqing Xu, Gang Chen
2025 conf
EMNLP (Findings)
Qingsong Wang, Tao Wu, Wang Lin, Yueying Feng, Gongsheng Yuan, Chang Yao, Jingyuan Chen
2025 J jnl
CoRR
Qingsong Wang, Tao Wu, Wang Lin, Yueying Feng, Gongsheng Yuan, Chang Yao, Jingyuan Chen
2025 A* conf
IJCAI
WenKang Han, Wang Lin, Liya Hu, Zhenlong Dai, Yiyun Zhou, Mengze Li, Zemin Liu, Chang Yao, Jingyuan Chen
2025 J jnl
CoRR
WenKang Han, Wang Lin, Liya Hu, Zhenlong Dai, Yiyun Zhou, Mengze Li, Zemin Liu, Chang Yao, Jingyuan Chen
2025 A* conf
IJCAI
Yicheng Liu, Sai Wu, Tianyun Zhang, Chang Yao, Ning Shen
2025 J jnl
CoRR
WenKang Han, Zhixiong Zeng, Jing Huang, Shu Jiang, Liming Zheng, Longrong Yang, Haibo Qiu, Chang Yao, Jingyuan Chen, Lin Ma
2025 A* conf
AAAI
Zhenlong Dai, Bingrui Chen, Zhuoluo Zhao, Xiu Tang, Sai Wu, Chang Yao, Zhipeng Gao, Jingyuan Chen
2025 J jnl
CoRR
Zhenlong Dai, Bingrui Chen, Zhuoluo Zhao, Xiu Tang, Sai Wu, Chang Yao, Zhipeng Gao, Jingyuan Chen
2025 A* conf
CVPR
Wang Lin, Qingsong Wang, Yueying Feng, Shulei Wang, Tao Jin, Zhou Zhao, Fei Wu, Chang Yao, Jingyuan Chen
2025 A* conf
ICML
Xiaoyu Wang, Wenhao Yang, Chang Yao, Mingli Song, Yuanyu Wan
2025 A* conf
AAAI
Guoyan Liang, Qin Zhou, Zhe Wang, Jingyuan Chen, Lin Gu, Chang Yao, Sai Wu, Bingcang Huang, Kai Chen
2025 A* conf
ACM Multimedia
WenKang Han, Wang Lin, Yiyun Zhou, Qi Liu, Shulei Wang, Chang Yao, Jingyuan Chen
2025 J jnl
CoRR
WenKang Han, Wang Lin, Yiyun Zhou, Qi Liu, Shulei Wang, Chang Yao, Jingyuan Chen
2025 conf
ACL (Findings)
Yimiao Qiu, Yang Deng, Quanming Yao, Zhimeng Zhang, Zhiang Dong, Chang Yao, Jingyuan Chen
2025 conf
EMNLP (Findings)
Xinpeng Ti, Wentao Ye, Zhifang Zhang, Junbo Zhao, Chang Yao, Lei Feng, Haobo Wang
2025 A* conf
IJCAI
Rui Wang, Mingxuan Xia, Haobo Wang, Lei Feng, Junbo Zhao, Gang Chen, Chang Yao
2025 J jnl
CoRR
Rui Wang, Mingxuan Xia, Chang Yao, Lei Feng, Junbo Zhao, Gang Chen, Haobo Wang
2025 conf
ACL (Findings)
Han Lin, Xiu Tang, Huan Li, Wenxue Cao, Sai Wu, Chang Yao, Lidan Shou, Gang Chen
2024 A* conf
IJCAI
Guoyan Liang, Qin Zhou, Jingyuan Chen, Zhe Wang, Chang Yao
2024 A* conf
KDD
Cheng Peng, Haobo Wang, Ke Chen, Lidan Shou, Chang Yao, Runze Wu, Gang Chen
2024 A* conf
NeurIPS
Wang Lin, Yueying Feng, WenKang Han, Tao Jin, Zhou Zhao, Fei Wu, Chang Yao, Jingyuan Chen
2024 B conf
ICMR
Yueying Feng, Fan Ma, Wang Lin, Chang Yao, Jingyuan Chen, Yi Yang
2024 A* conf
NeurIPS
Yuanyu Wan, Chang Yao, Mingli Song, Lijun Zhang
2024 J jnl
CoRR
Yuanyu Wan, Chang Yao, Mingli Song, Lijun Zhang
2024 J jnl
IEEE ACM Trans. Audio Speech Lang. Process.
Cheng Peng, Haobo Wang, Jue Wang, Lidan Shou, Ke Chen, Gang Chen, Chang Yao
2024 A* conf
ICDE
Qiushi Zheng, Zhanhao Zhao, Wei Lu, Chang Yao, Yuxing Chen, Anqun Pan, Xiaoyong Du
2024 J jnl
CoRR
Qiushi Zheng, Zhanhao Zhao, Wei Lu, Chang Yao, Yuxing Chen, Anqun Pan, Xiaoyong Du
2024 J jnl
CoRR
Zhenlong Dai, Chang Yao, WenKang Han, Ying Yuan, Zhipeng Gao, Jingyuan Chen
2024 conf
ACL (1)
Zhenlong Dai, Chang Yao, WenKang Han, Yuanying Yuanying, Zhipeng Gao, Jingyuan Chen
2024 A* conf
ICML
Yuanyu Wan, Chang Yao, Mingli Song, Lijun Zhang
2024 A* conf
CVPR
Lin Long, Haobo Wang, Zhijie Jiang, Lei Feng, Chang Yao, Gang Chen, Junbo Zhao
2024 conf
VLDB Workshops
Tuodu Li, Gongsheng Yuan, Chang Yao, Meng Shi, Ziyue Wang, Ling Qian, Jiaheng Lu
2024 J jnl
Proc. VLDB Endow.
Xiu Tang, Wenhao Liu, Sai Wu, Chang Yao, Gongsheng Yuan, Shanshan Ying, Gang Chen
2023 J jnl
CoRR
Yucheng Liao, Yuanyu Wan, Chang Yao, Mingli Song
2023 J jnl
CoRR
Yuanyu Wan, Chang Yao, Mingli Song, Lijun Zhang
2023 conf
VLDB Workshops
Gongsheng Yuan, Jiaheng Lu, Yuxing Chen, Sai Wu, Chang Yao, Zhengtong Yan, Tuodu Li, Gang Chen
2022 A* conf
ICDE
Qingpeng Cai, Kaiping Zheng, Beng Chin Ooi, Wei Wang, Chang Yao
2022 A conf
ICME
Yingying Jiao, Haipeng Chen, Chang Yao, Pengxiang Su, Chong Fu, Xiang Wang
2022 conf
APWeb/WAIM (1)
Ling-Ze Meng, Chang Yao, Meihui Zhang, Zhongle Xie
2020 B conf
ICPR
Panpan Qi, Zhaoqi Zhang, Wei Wang, Chang Yao
2018 J jnl
VLDB J.
Chang Yao, Meihui Zhang, Qian Lin, Beng Chin Ooi, Jiatao Xu
2017 J jnl
CoRR
Chang Yao, Meihui Zhang, Qian Lin, Beng Chin Ooi, Jiatao Xu
2016 conf
SIGMOD Conference
Chang Yao, Divyakant Agrawal, Gang Chen, Beng Chin Ooi, Sai Wu
2016 J jnl
IEEE Trans. Knowl. Data Eng.
Chang Yao, Divyakant Agrawal, Gang Chen, Qian Lin, Beng Chin Ooi, Weng-Fai Wong, Meihui Zhang
2015 J jnl
CoRR
Chang Yao, Divyakant Agrawal, Gang Chen, Beng Chin Ooi, Sai Wu
2015 J jnl
CoRR
Chang Yao, Divyakant Agrawal, Pengfei Chang, Gang Chen, Beng Chin Ooi, Weng-Fai Wong, Meihui Zhang
2015 J jnl
SIGMOD Rec.
Kian-Lee Tan, Qingchao Cai, Beng Chin Ooi, Weng-Fai Wong, Chang Yao, Hao Zhang
docs/macho_extractors_README.md
← Index docs/macho_extractors_README.md markdown
# MachO Extractors for RedB

This document describes the MachO extractors implementation for the RedB binary analysis framework.

## Overview

The MachO extractors provide comprehensive analysis capabilities for Mach-O binaries (macOS, iOS, watchOS, tvOS executables) following the same pattern as the existing PE extractors. The implementation uses the `machofile` library located in the `docs/` folder.

## Architecture

### Main Components

1. **MachOExtractor** (`redb/extractors/macho_extractor.py`)
   - Abstract base class for all MachO extractors
   - Handles MachO file parsing and common functionality
   - Supports both single-architecture and Universal/FAT binaries

2. **Individual Extractors** (`redb/extractors/macho_extractors/`)
   - `macho_features.py` - Basic MachO header and metadata
   - `macho_segments.py` - Segment information and analysis
   - `macho_imports.py` - Imported functions and libraries
   - `macho_exports.py` - Exported symbols
   - `macho_dylibs.py` - Dynamic library dependencies
   - `macho_signature.py` - Code signing information

3. **Data Models** (`redb/models/dataclasses.py`)
   - MachO-specific dataclasses for structured data storage
   - Compatible with Elasticsearch and ClickHouse exporters

## Features

### Supported Binary Types
- Single-architecture Mach-O binaries (32-bit and 64-bit)
- Universal/FAT binaries with multiple architectures
- All major CPU architectures (x86, x86_64, ARM, ARM64)

### Extracted Information

#### MachO Features
- Header information (magic, CPU type, file type, flags)
- Architecture detection
- Entry point information
- UUID
- Version information
- Signing status
- Encryption status
- Counts (segments, dylibs, imports, exports)

#### Segments
- Segment names and properties
- Virtual addresses and sizes
- File offsets and sizes
- Protection flags
- Entropy calculation
- Segment hashes (MD5, SHA256)

#### Imports
- Imported function names
- Library dependencies
- Import counts and statistics

#### Exports
- Exported symbol names
- Export counts and statistics

#### Dynamic Libraries
- Dylib names and paths
- Version information
- Timestamps
- Load command types

#### Code Signing
- Signing status
- Certificate information
- Entitlements
- Code directory details

## Usage

### Basic Usage

```python
from redb.extractors.macho_extractors import MachOFeaturesExtractor

# Create extractor
extractor = MachOFeaturesExtractor(
    filepath="/path/to/macho/binary",
    log=logger
)

# Extract data
features = extractor.extract()

# Export to databases
extractor.export_data()
```

### Testing

Use the provided test script to verify functionality:

```bash
python test_macho_extractors.py /path/to/macho/binary
```

## Implementation Details

### Universal Binary Support

The extractors handle Universal/FAT binaries by:
1. Detecting FAT binary format
2. Extracting individual architectures
3. Providing unified interface for both single and multi-arch binaries
4. Supporting architecture-specific extraction

### Error Handling

- Graceful handling of malformed binaries
- Comprehensive logging for debugging
- Fallback mechanisms for missing data
- Exception handling for corrupted files

### Performance Considerations

- Lazy parsing of MachO structures
- Efficient memory usage for large binaries
- Cached property access for repeated queries
- Optimized data extraction patterns

## Integration

### Database Exporters

The extractors support both Elasticsearch and ClickHouse exporters:

- **Elasticsearch**: JSON document storage with full-text search
- **ClickHouse**: Columnar storage for analytical queries

### Schema Compatibility

All extractors follow the established schema patterns:
- Consistent field naming
- Proper data types
- Timestamp handling
- Hash field inclusion

## Future Enhancements

Potential areas for improvement:

1. **Additional Extractors**
   - MachO resources extraction
   - Symbol table analysis
   - Relocation information
   - Thread state analysis

2. **Enhanced Analysis**
   - Malware detection patterns
   - Behavioral analysis
   - Similarity hashing
   - YARA rule integration

3. **Performance Optimizations**
   - Parallel processing for multi-arch binaries
   - Streaming data processing
   - Memory-mapped file access

## Dependencies

- `machofile` library (included in `docs/`)
- Standard Python libraries (hashlib, datetime, etc.)
- RedB framework components

## Contributing

When adding new MachO extractors:

1. Follow the established pattern in existing extractors
2. Add appropriate dataclasses to `dataclasses.py`
3. Update the enum tags in `enum.py`
4. Include comprehensive error handling
5. Add tests for new functionality
6. Update this documentation

## Troubleshooting

### Common Issues

1. **Import Errors**: Ensure `machofile` library is accessible
2. **Memory Issues**: Large Universal binaries may require significant memory
3. **Corrupted Files**: Malformed MachO files may cause parsing errors
4. **Architecture Mismatch**: Some features may not be available for all architectures

### Debugging

Enable debug logging to see detailed extraction process:

```python
import logging
logging.basicConfig(level=logging.DEBUG)
```

## License

This implementation follows the same license as the main RedB project.