Xian-Ming Gu

79 papers Journal 78Unranked 1
YearRankTypeTitle / Venue / Authors
2026 J jnl
CoRR
Achraf Badahmane, Xian-Ming Gu
2026 J jnl
Commun. Nonlinear Sci. Numer. Simul.
Xian-Ming Gu, Chaoyu Quan, Qi Xin
2025 J jnl
Numer. Linear Algebra Appl.
Wei-Hua Luo, Xian-Ming Gu, Bruno Carpentieri, Jun Guo
2025 J jnl
Appl. Math. Comput.
Qi Xin, Xian-Ming Gu, Li-bin Liu
2025 J jnl
Appl. Math. Lett.
Qianqian Xue, Wenli Zeng, Xiaoqi Xu, Xian-Ming Gu
2025 J jnl
CoRR
Pu Yuan, Paul Zegeling, Xian-Ming Gu
2025 J jnl
J. Appl. Math. Comput.
Qi Xin, Xian-Ming Gu
2025 J jnl
CoRR
Qian Qian Xue, Xiao Qiang Yue, Xian-Ming Gu
2025 J jnl
Commun. Nonlinear Sci. Numer. Simul.
Xue Zhang, Xian-Ming Gu, Yong-Liang Zhao
2024 J jnl
CoRR
Wei-Hua Luo, Xian-Ming Gu, Bruno Carpentieri, Jun Guo
2024 J jnl
Int. J. Comput. Math.
Jinfeng Zhou, Xian-Ming Gu, Yong-Liang Zhao, Hu Li
2024 J jnl
Appl. Math. Lett.
Ting-Ting Feng, Xian-Ming Gu
2024 J jnl
CoRR
Yong-Liang Zhao, Xian-Ming Gu, Cornelis W. Oosterlee
2024 J jnl
J. Comput. Phys.
Yong-Liang Zhao, Xian-Ming Gu
2024 J jnl
J. Supercomput.
Qian-Ying Hu, Xian-Ming Gu, Chun Wen
2024 J jnl
J. Frankl. Inst.
Azita Tajaddini, Farid Saberi-Movahed, Xian-Ming Gu, Mohammed Heyouni
2024 J jnl
CoRR
Zi-Hang She, Xue Zhang, Xian-Ming Gu, Stefano Serra-Capizzano
2024 J jnl
CoRR
Xian-Ming Gu, Jun Liu, Cornelis W. Oosterlee
2024 J jnl
Appl. Math. Comput.
Xue Zhang, Xian-Ming Gu, Yong-Liang Zhao, Hu Li, Chuan-Yun Gu
2024 J jnl
Appl. Math. Lett.
Zi-Hang She, Yong-Qi Wen, Yi-feng Qiu, Xian-Ming Gu
2024 J jnl
Numer. Algorithms
Lei Gao, Xian-Ming Gu, Xiudan Jia, Chaoqian Li
2023 J jnl
Comput. Math. Appl.
Yong-Liang Zhao, Xian-Ming Gu, Hu Li
2023 J jnl
CoRR
Jinfeng Zhou, Xian-Ming Gu, Jinye Shen, Yong-Liang Zhao, Hu Li
2023 J jnl
Entropy
Jia-Fen Chen, Xian-Ming Gu, Liang Li, Ping Zhou
2023 J jnl
IEEE Trans. Knowl. Data Eng.
Chaodong Tong, Huailiang Peng, Xu Bai, Qiong Dai, Ruitong Zhang, Yangyang Li, Hanjie Xu, Xian-Ming Gu
2022 J jnl
Numer. Algorithms
Xian-Ming Gu, Siu-Long Lei, Ke Zhang, Zhao-Li Shen, Chun Wen, Bruno Carpentieri
2022 J jnl
Math. Comput. Simul.
Wei-Hua Luo, Xian-Ming Gu, Bruno Carpentieri
2022 J jnl
J. Comput. Appl. Math.
Yu Jin, Chun Wen, Zhao-Li Shen, Xian-Ming Gu
2022 J jnl
CoRR
Yong-Liang Zhao, Xian-Ming Gu
2021 J jnl
Math. Comput. Simul.
Wei-Hua Luo, Xian-Ming Gu, Liu Yang, Jing Meng
2021 J jnl
Symmetry
Zhao-Li Shen, Hao Yang, Bruno Carpentieri, Xian-Ming Gu, Chun Wen
2021 J jnl
J. Sci. Comput.
Yong-Liang Zhao, Xian-Ming Gu, Alexander Ostermann
2021 J jnl
J. Comput. Phys.
Yong-Liang Zhao, Alexander Ostermann, Xian-Ming Gu
2021 J jnl
J. Comput. Appl. Math.
Qian-Ying Hu, Chun Wen, Ting-Zhu Huang, Zhao-Li Shen, Xian-Ming Gu
2021 J jnl
J. Comput. Appl. Math.
Chun Wen, Qian-Ying Hu, Guojian Yin, Xian-Ming Gu, Zhao-Li Shen
2021 J jnl
Appl. Math. Lett.
Xian-Ming Gu, Hai-Wei Sun, Yong-Liang Zhao, Xiangcheng Zheng
2021 J jnl
Symmetry
Xia Tang, Chun Wen, Xian-Ming Gu, Zhao-Li Shen
2021 J jnl
J. Sci. Comput.
Huan-Yan Jian, Ting-Zhu Huang, Alexander Ostermann, Xian-Ming Gu, Yong-Liang Zhao
2021 J jnl
Appl. Math. Comput.
Huan-Yan Jian, Ting-Zhu Huang, Alexander Ostermann, Xian-Ming Gu, Yong-Liang Zhao
2021 J jnl
Comput. Math. Appl.
Huan-Yan Jian, Ting-Zhu Huang, Xian-Ming Gu, Xi-Le Zhao, Yong-Liang Zhao
2021 J jnl
CoRR
Yong-Liang Zhao, Jing Wu, Xian-Ming Gu
2021 J jnl
J. Appl. Math. Comput.
Yong-Liang Zhao, Xian-Ming Gu, Meng Li, Huan-Yan Jian
2021 J jnl
Appl. Math. Comput.
Lin Guo, Xi-Le Zhao, Xian-Ming Gu, Yong-Liang Zhao, Yu-Bang Zheng, Ting-Zhu Huang
2020 J jnl
J. Sci. Comput.
Yong-Liang Zhao, Pei-Yong Zhu, Xian-Ming Gu, Xi-Le Zhao, Huan-Yan Jian
2020 J jnl
CoRR
Yong-Liang Zhao, Alexander Ostermann, Xian-Ming Gu
2020 J jnl
CoRR
Xian-Ming Gu, Yong-Liang Zhao, Xi-Le Zhao, Bruno Carpentieri, Yu-Yun Huang
2020 J jnl
CoRR
Yong-Liang Zhao, Xian-Ming Gu, Alexander Ostermann
2020 J jnl
J. Comput. Phys.
Xian-Ming Gu, Shu-Lin Wu
2020 J jnl
CoRR
Yong-Liang Zhao, Meng Li, Alexander Ostermann, Xian-Ming Gu
2020 J jnl
J. Comput. Appl. Math.
Xian-Ming Gu, Ting-Zhu Huang, Bruno Carpentieri, Akira Imakura, Ke Zhang, Lei Du
2020 J jnl
CoRR
Xian-Ming Gu, Hai-Wei Sun, Yanzhi Zhang, Yong-Liang Zhao
2020 J jnl
J. Comput. Appl. Math.
Huan-Yan Jian, Ting-Zhu Huang, Xian-Ming Gu, Xi-Le Zhao, Yong-Liang Zhao
2020 J jnl
CoRR
Huan-Yan Jian, Ting-Zhu Huang, Xian-Ming Gu, Xi-Le Zhao, Yong-Liang Zhao
2019 J jnl
Symmetry
Hong-Xiu Zhong, Xian-Ming Gu, Shao-Liang Zhang
2019 J jnl
CoRR
Xian-Ming Gu, Siu-Long Lei, Ke Zhang, Zhao-Li Shen, Chun Wen, Bruno Carpentieri
2019 J jnl
CoRR
Xian-Ming Gu, Ting-Zhu Huang, Yong-Liang Zhao, Pin Lyu, Bruno Carpentieri
2019 J jnl
Comput. Math. Appl.
Hong-Xiu Zhong, Xian-Ming Gu
2019 J jnl
J. Comput. Appl. Math.
Yong-Liang Zhao, Pei-Yong Zhu, Xian-Ming Gu, Xi-Le Zhao, Jianxiong Cao
2019 J jnl
J. Comput. Appl. Math.
Zhao-Li Shen, Ting-Zhu Huang, Bruno Carpentieri, Chun Wen, Xian-Ming Gu, Xue-Yuan Tan
2018 J jnl
J. Comput. Phys.
Meng Li, Xian-Ming Gu, Chengming Huang, Mingfa Fei, Guoyu Zhang
2018 J jnl
Commun. Nonlinear Sci. Numer. Simul.
Zhao-Li Shen, Ting-Zhu Huang, Bruno Carpentieri, Chun Wen, Xian-Ming Gu
2018 J jnl
Int. J. Syst. Sci.
Jinnan Luo, Wenhong Tian, Shouming Zhong, Kaibo Shi, Xian-Ming Gu, Wenqin Wang
2018 J jnl
J. Comput. Appl. Math.
Xian-Ming Gu, Ting-Zhu Huang, Guojian Yin, Bruno Carpentieri, Chun Wen, Lei Du
2018 J jnl
Symmetry
Yongtao Li, Xian-Ming Gu, Jianxing Zhao
2017 J jnl
Appl. Math. Comput.
Zhao-Li Shen, Ting-Zhu Huang, Bruno Carpentieri, Xian-Ming Gu, Chun Wen
2017 J jnl
Appl. Math. Lett.
Wei-Hua Luo, Ting-Zhu Huang, Xian-Ming Gu, Yi Liu
2017 J jnl
J. Sci. Comput.
Xian-Ming Gu, Ting-Zhu Huang, Cui-Cui Ji, Bruno Carpentieri, Anatoly A. Alikhanov
2017 J jnl
Appl. Math. Comput.
Jinnan Luo, Wenhong Tian, Shouming Zhong, Kaibo Shi, Hao Chen, Xian-Ming Gu, Wenqin Wang
2016 J jnl
J. Comput. Appl. Math.
Xian-Ming Gu, Ting-Zhu Huang, Bruno Carpentieri
2016 J jnl
Appl. Math. Comput.
Wei-Hua Luo, Ting-Zhu Huang, Guo-Cheng Wu, Xian-Ming Gu
2015 J jnl
Comput. Math. Appl.
Xian-Ming Gu, Ting-Zhu Huang, Bruno Carpentieri, Liang Li, Chun Wen
2015 conf
ENUMATH
Xian-Ming Gu, Bruno Carpentieri, Ting-Zhu Huang, Jing Meng
2015 J jnl
Appl. Math. Lett.
Yu-Qin Bai, Ting-Zhu Huang, Xian-Ming Gu
2015 J jnl
Appl. Math. Lett.
Xian-Ming Gu, Ting-Zhu Huang, Hou-Biao Li, Liang Li, Wei-Hua Luo
2015 J jnl
J. Comput. Appl. Math.
Xian-Ming Gu, Ting-Zhu Huang, Xi-Le Zhao, Hou-Biao Li, Liang Li
2015 J jnl
Comput. Phys. Commun.
Xian-Ming Gu, Markus Clemens, Ting-Zhu Huang, Liang Li
2014 J jnl
Comput. Math. Appl.
Xian-Ming Gu, Ting-Zhu Huang, Jing Meng, Tomohiro Sogabe, Hou-Biao Li, Liang Li
2014 J jnl
Appl. Math. Comput.
Xian-Ming Gu, Ting-Zhu Huang, Xi-Le Zhao, Wei-Ru Xu, Hou-Biao Li, Liang Li
2014 J jnl
Comput. Math. Appl.
Wei-Hua Luo, Ting-Zhu Huang, Liang Li, Yong Zhang, Xian-Ming Gu
redb/extractors/pe_extractors/pe_overlay.py
← Index redb/extractors/pe_extractors/pe_overlay.py python
from hashlib import md5, sha1, sha256
import inspect
from datetime import datetime, timezone
from typing import Any

import magic
from magika import Magika

from redb.extractors.enum import Tag
from redb.extractors.pe_extractor import PEExtractor
from redb.models.dataclasses import PEOverlay


class PEOverlayExtractor(PEExtractor):

    def __init__(
        self,
        filepath,
        log,
        exporters=None,
        index_prefix=None,
        elastic_index=None,
        known_benign=False,
        known_malicious=False,
        pe=None,
    ):
        super().__init__(
            filepath,
            log,
            exporters,
            index_prefix,
            elastic_index,
            known_benign,
            known_malicious,
            pe,
        )
        self.elastic_index = self.index_prefix + "-pe_overlay"
        self.log.debug(inspect.currentframe().f_code.co_name)

    def tag(self):
        return Tag.PE_OVERLAY.value

    def _extract_pe_overlay(self):
        self.log.debug(inspect.currentframe().f_code.co_name)
        overlay = self.pe.get_overlay()
        if overlay:
            return PEOverlay(
                _id=sha256(overlay).hexdigest(),
                overlay_size=len(overlay),
                overlay_entropy=self.calculate_entropy(overlay),
                overlay_offset=self.pe.get_overlay_data_start_offset(),
                overlay_mimetype=magic.from_buffer(overlay, mime=True),
                overlay_type=magic.from_buffer(overlay),
                overlay_magika=Magika().identify_bytes(overlay).output.ct_label,
                overlay_sha256=sha256(overlay).hexdigest(),
                overlay_sha1=sha1(overlay).hexdigest(),
                overlay_md5=md5(overlay).hexdigest(),
            )
        return None

    def extract(self):
        try:
            self.log.debug(inspect.currentframe().f_code.co_name)
            overlay = self._extract_pe_overlay()
            # self.export_to_elastic([overlay])  # Let the exporters handle this
            return overlay
        except Exception as e:
            self.log.error(f"Error extracting PE overlay: {e}")
            return None

    def prepare_export_data(self, exporter_type: str) -> Any:
        if exporter_type == "ElasticsearchExporter":
            return self.extract()
        elif exporter_type == "ClickHouseExporter":
            overlay = self.extract()
            if overlay is None:
                return None
            
            data = []
            current_time = datetime.now(timezone.utc)
            
            data.append([
                self.sha256,              # sha256
                self.md5,                 # md5
                self.sha1,                # sha1
                overlay.overlay_size,     # overlay_size
                overlay.overlay_entropy,  # overlay_entropy
                overlay.overlay_offset,   # overlay_offset
                overlay.overlay_mimetype, # overlay_mimetype
                overlay.overlay_type,     # overlay_type
                overlay.overlay_magika,   # overlay_magika
                overlay.overlay_sha256,   # overlay_sha256
                overlay.overlay_sha1,     # overlay_sha1
                overlay.overlay_md5,      # overlay_md5
                current_time             # analysis_date
            ])
            
            column_names = [
                'sha256', 'md5', 'sha1', 'overlay_size', 'overlay_entropy',
                'overlay_offset', 'overlay_mimetype', 'overlay_type', 'overlay_magika',
                'overlay_sha256', 'overlay_sha1', 'overlay_md5',
                'analysis_date'
            ]
            
            if not data:
                return None

            column_type_names = [
                'FixedString(64)', 'FixedString(32)', 'FixedString(40)',
                'UInt64', 'Float64', 'UInt64',
                'LowCardinality(String)', 'LowCardinality(String)', 'LowCardinality(String)',
                'FixedString(64)', 'FixedString(40)', 'FixedString(32)',
                'DateTime64(3, \'UTC\')'
            ]

            return (data, column_names, column_type_names)

    def get_clickhouse_table(self) -> str:
        return "redb_pe_overlays"