Haiguang Yang

81 papers C 49Misc 2Journal 28Unranked 2
YearRankTypeTitle / Venue / Authors
2025 J jnl
IEEE Trans. Geosci. Remote. Sens.
Wanmin Wu, Wei Pu, Yu Hai, Junjie Wu, Yulin Huang, Yue Song, Haiguang Yang, Jianyu Yang
2025 J jnl
IEEE Trans. Geosci. Remote. Sens.
Youshan Tan, Hongyang An, Zhongyu Li, Junjie Wu, Haiguang Yang, Jianyu Yang
2025 J jnl
IEEE Trans. Geosci. Remote. Sens.
Mingyue Lou, Hongyang An, Haowen Zuo, Zhongyu Li, Wei Pu, Junjie Wu, Haiguang Yang, Jianyu Yang
2025 J jnl
IEEE Trans. Aerosp. Electron. Syst.
Chi Zhang, Hongyang An, Zhongyu Li, Mingyue Lou, Junjie Wu, Wei Pu, Haiguang Yang, Jianyu Yang
2024 C conf
IGARSS
Bowen Yang, Hongyang An, Mingyue Lou, Zhongyu Li, Junjie Wu, Haiguang Yang, Jianyu Yang
2024 J jnl
IEEE Trans. Geosci. Remote. Sens.
Junao Li, Zhongyu Li, Haiguang Yang, Qing Yang, Yahui Wang, Junjie Wu, Jianyu Yang
2024 C conf
IGARSS
Lei Wang, Yufeng Qiu, Tianfu Chen, Wenchao Li, Haiguang Yang, Jianyu Yang
2024 J jnl
IEEE J. Sel. Top. Appl. Earth Obs. Remote. Sens.
Wenchao Li, Lei Wang, Dan Liu, Tianfu Chen, Zhongyu Li, Junjie Wu, Haiguang Yang, Jianyu Yang
2024 C conf
IGARSS
Yuqian Li, Youshan Tan, Hongyang An, Zhongyu Li, Haiguang Yang, Junjie Wu, Jianyu Yang
2023 C conf
IGARSS
Jiayue Liu, Qian Liu, Yue Song, Wanmin Wu, Xinyu Mao, Zhongyu Li, Junjie Wu, Haiguang Yang
2023 C conf
IGARSS
Xilai Li, Mingxing Shen, Hongyang An, Junjie Wu, Zhongyu Li, Haiguang Yang, Jianyu Yang
2023 J jnl
IEEE Trans. Geosci. Remote. Sens.
Junjie Wu, Wei Pu, Hongyang An, Yulin Huang, Haiguang Yang, Jianyu Yang
2023 C conf
IGARSS
Peng Huang, Yu Hai, Zhongyu Li, Haiguang Yang, Junjie Wu, Jianyu Yang
2022 C conf
IGARSS
Wanmin Wu, Yongwei Zhang, Zhongyu Li, Haiguang Yang, Junjie Wu, Jianyu Yang
2022 C conf
IGARSS
Xingyu Tuo, Haiguang Yang, Haoyang Tang, Xiaokun Zhou, Yin Zhang, Yulin Huang, Jianyu Yang
2022 C conf
IGARSS
Haoyu Wang, Yu Hai, Haiguang Yang, Zhongyu Li, Junjie Wu, Jianyu Yang
2022 J jnl
IEEE Trans. Geosci. Remote. Sens.
Zhongyu Li, Xiaodong Zhang, Qing Yang, Yuping Xiao, Hongyang An, Haiguang Yang, Junjie Wu, Jianyu Yang
2022 J jnl
IEEE Trans. Geosci. Remote. Sens.
Yin Zhang, Jiahao Shen, Xingyu Tuo, Haiguang Yang, Yongchao Zhang, Yulin Huang, Jianyu Yang
2022 C conf
IGARSS
Jiahao Shen, Yongwei Zhang, Xingyu Tuo, Haiguang Yang, Yulin Huang, Jianyu Yang
2021 C conf
IGARSS
Zebiao Wu, Jifang Pei, Weibo Huo, Yulin Huang, Yin Zhang, Haiguang Yang
2021 C conf
IGARSS
Meiling Cui, Yulin Huang, Rufei Wang, Jifang Pei, Weibo Huo, Yin Zhang, Haiguang Yang
2021 C conf
IGARSS
Junyu Zhu, Deqing Mao, Yongchao Zhang, Yin Zhang, Yulin Huang, Haiguang Yang
2021 C conf
IGARSS
Junao Li, Xiaodong Zhang, Zhongyu Li, Junjie Wu, Haiguang Yang, Jianyu Yang
2021 C conf
IGARSS
Zhiyong Wang, Chenwei Wang, Jifang Pei, Yulin Huang, Yin Zhang, Haiguang Yang, Zhiwei Xing
2021 C conf
IGARSS
Jiawei Luo, Yongchao Zhang, Yongwei Zhang, Yin Zhang, Yulin Huang, Haiguang Yang, Jianyu Yang
2020 C conf
IGARSS
Zhiyong Wang, Chenwei Wang, Jifang Pei, Yulin Huang, Yin Zhang, Haiguang Yang
2020 C conf
IGARSS
Chuan Huang, Zhongyu Li, Junjie Wu, Yulin Huang, Haiguang Yang, Jianyu Yang
2020 J jnl
IEEE Trans. Geosci. Remote. Sens.
Zhongyu Li, Shanchuan Li, Zhutian Liu, Haiguang Yang, Junjie Wu, Jianyu Yang
2020 C conf
IGARSS
Jianwen Yu, Wenchao Li, Zhongyu Li, Junjie Wu, Haiguang Yang, Jianyu Yang
2020 J jnl
Remote. Sens.
Chenwei Wang, Jifang Pei, Zhiyong Wang, Yulin Huang, Junjie Wu, Haiguang Yang, Jianyu Yang
2019 C conf
IGARSS
Qing Yang, Deming Guo, Zhongyu Li, Junjie Wu, Yulin Huang, Haiguang Yang, Jianyu Yang
2019 J jnl
IEEE Access
Wei Pu, Yulin Huang, Junjie Wu, Haiguang Yang, Jianyu Yang
2019 J jnl
IEEE J. Sel. Top. Appl. Earth Obs. Remote. Sens.
Wei Pu, Junjie Wu, Yulin Huang, Jianyu Yang, Haiguang Yang
2019 C conf
IGARSS
Shanchuan Li, Zhongyu Li, Zhutian Liu, Haiguang Yang, Junjie Wu, Jianyu Yang
2019 C conf
IGARSS
Chuan Huang, Zhongyu Li, Junjie Wu, Yulin Huang, Haiguang Yang, Jianyu Yang
2019 C conf
IGARSS
Xiaqing Yang, Yongchao Zhang, Deqing Mao, Yuanyuan Bu, Haiguang Yang, Jun Shi
2018 C conf
IGARSS
Danping Tong, Haiguang Yang, Junjie Wu, Jianyu Yang
2018 J jnl
IEEE Trans. Geosci. Remote. Sens.
Zhongyu Li, Junjie Wu, Zhutian Liu, Yulin Huang, Haiguang Yang, Jianyu Yang
2018 C conf
IGARSS
Wei Pu, Yulin Huang, Junjie Wu, Jianyu Yang, Haiguang Yang
2018 C conf
IGARSS
Hongyang An, Junjie Wu, Zhichao Sun, Jianyu Yang, Yulin Huang, Haiguang Yang
2018 J jnl
IEEE J. Sel. Top. Appl. Earth Obs. Remote. Sens.
Junjie Wu, Wei Pu, Yulin Huang, Jianyu Yang, Haiguang Yang
2018 C conf
IGARSS
Wenjing Wang, Junjie Wu, Xiaqing Yang, Yuxuan Miao, Jianyu Yang, Haiguang Yang
2018 C conf
IGARSS
Qianghui Zhang, Junjie Wu, Jianyu Yang, Yulin Huang, Haiguang Yang, Xiaobo Yang
2018 J jnl
IEEE Trans. Geosci. Remote. Sens.
Wei Pu, Junjie Wu, Yulin Huang, Xiaodong Wang, Jianyu Yang, Wenchao Li, Haiguang Yang
2018 C conf
IGARSS
Haiguang Yang, Changlin Li, Yin Zhang, Yulin Huang, Jianyu Yang
2018 C conf
IGARSS
Qianghui Zhang, Junjie Wu, Chuyang Li, Jianyu Yang, Yulin Huang, Haiguang Yang, Xiaobo Yang
2018 C conf
IGARSS
Hongyang An, Junjie Wu, Zhichao Sun, Jianyu Yang, Yulin Huang, Haiguang Yang
2018 J jnl
IEEE Geosci. Remote. Sens. Lett.
Hongyang An, Junjie Wu, Zhichao Sun, Jianyu Yang, Yulin Huang, Haiguang Yang
2017 J jnl
IEEE J. Sel. Top. Appl. Earth Obs. Remote. Sens.
Wei Pu, Junjie Wu, Yulin Huang, Ke Du, Wenchao Li, Jianyu Yang, Haiguang Yang
2017 J jnl
Sensors
Zhongyu Li, Junjie Wu, Yulin Huang, Haiguang Yang, Jianyu Yang
2017 J jnl
IEEE Geosci. Remote. Sens. Lett.
Wei Pu, Wenchao Li, Junjie Wu, Yulin Huang, Jianyu Yang, Haiguang Yang
2017 C conf
IGARSS
Zhongyu Li, Junjie Wu, Zhichao Sun, Yulin Huang, Haiguang Yang, Jianyu Yang
2017 C conf
IGARSS
Qianghui Zhang, Junjie Wu, Jianyu Yang, Yulin Huang, Ke Du, Haiguang Yang
2016 J jnl
IEEE Trans. Geosci. Remote. Sens.
Wei Pu, Junjie Wu, Yulin Huang, Wenchao Li, Zhichao Sun, Jianyu Yang, Haiguang Yang
2016 J jnl
Sensors
Qianghui Zhang, Junjie Wu, Wenchao Li, Yulin Huang, Jianyu Yang, Haiguang Yang
2016 J jnl
IEEE J. Sel. Top. Appl. Earth Obs. Remote. Sens.
Jifang Pei, Yulin Huang, Weibo Huo, Junjie Wu, Jianyu Yang, Haiguang Yang
2016 C conf
IGARSS
Zhongyu Li, Junjie Wu, Zhichao Sun, Yulin Huang, Haiguang Yang, Jianyu Yang
2015 C conf
IGARSS
Yue Wang, Yongchao Zhang, Yulin Huang, Wenchao Li, Jianyu Yang, Haiguang Yang
2015 C conf
IGARSS
Min Li, Wei Pu, Wenchao Li, Jianyu Yang, Yulin Huang, Haiguang Yang, Xiaobo Yang
2014 C conf
IGARSS
Haiguang Yang, Zhongyu Li, Leiquan Song, Junjie Wu, Yulin Huang, Jianyu Yang
2014 J jnl
IEEE Geosci. Remote. Sens. Lett.
Junjie Wu, Zhongyu Li, Yulin Huang, Jianyu Yang, Haiguang Yang, Qing Huo Liu
2014 C conf
IGARSS
Qianghui Zhang, Junjie Wu, Zhongyu Li, Yulin Huang, Haiguang Yang, Jianyu Yang, Wenchao Li
2014 C conf
IGARSS
Zhichao Sun, Junjie Wu, Yulin Huang, Zhongyu Li, Haiguang Yang, Jianyu Yang
2014 J jnl
EURASIP J. Adv. Signal Process.
Yulin Huang, Jifang Pei, Jianyu Yang, Tao Wang, Haiguang Yang, Bing Wang
2014 C conf
IGARSS
Qianghui Zhang, Wenchao Li, Zhongyu Li, Yulin Huang, Haiguang Yang, Jianyu Yang, Junjie Wu
2013 J jnl
IEICE Trans. Commun.
Junjie Wu, Jianyu Yang, Yulin Huang, Haiguang Yang, Lingjiang Kong
2013 C conf
IGARSS
Jianyu Yang, Yulin Huang, Haiguang Yang, Junjie Wu, Wenchao Li, Zhongyu Li, Xiaobo Yang
2013 C conf
IGARSS
Haiguang Yang, Long Teng, Yulin Huang, Jianyu Yang, Xiaobo Yang
2013 J jnl
EURASIP J. Wirel. Commun. Netw.
Haiguang Yang, Jianyu Yang, Zhongyu Li, Junjie Wu, Yulin Huang, Long Teng
2013 C conf
IGARSS
Qingying Yi, Zhongyu Li, Yulin Huang, Jianyu Yang, Haiguang Yang, Xiaobo Yang
2013 C conf
IGARSS
Wenchao Li, Jianyu Yang, Yulin Huang, Haiguang Yang, Qianghui Zhang, Zhe Liu, Junjie Wu
2013 C conf
IGARSS
Jianyu Yang, Wenchao Li, Yulin Huang, Haiguang Yang, Ye Yuan, Leiquan Song
2012 C conf
IGARSS
Haiguang Yang, Ye Yuan, Junjie Wu, Yulin Huang, Jianyu Yang
2012 J jnl
IEICE Trans. Commun.
Junjie Wu, Jianyu Yang, Yulin Huang, Haiguang Yang, Lingjiang Kong
2011 Misc conf
ICASSP
Junjie Wu, Jianyu Yang, Yulin Huang, Haiguang Yang, Zhe Liu
2011 conf
EMEIT
Huixin Zhang, Xiaobin Hu, Suhua Liu, Haiguang Yang
2011 C conf
IGARSS
Junjie Wu, Yulin Huang, Jianyu Yang, Wenchao Li, Haiguang Yang
2010 C conf
IGARSS
Junjie Wu, Jianyu Yang, Yulin Huang, Haiguang Yang
2009 conf
IGARSS (4)
Yang Yue, Xiaoling Zhang, ZiJin Zuo, Haiguang Yang
2009 Misc conf
ICASSP
Junjie Wu, Jianyu Yang, Haiguang Yang, Yulin Huang
2007 C conf
IGARSS
Yulin Huang, Jianyu Yang, Li Xian, Haiguang Yang, Zhong Tian
sql/redb_js_tables.sql
← Index sql/redb_js_tables.sql sql
-- JavaScript malware analysis tables
-- Engine: ReplacingMergeTree(analysis_date) — latest analysis wins on re-processing
--
-- File order:
--   1. redb_js_features
--   2. redb_js_suspicious_apis
--   3. redb_js_deobfuscation
--   4. code_text_content              (generic text-content table; JS today,
--                                      PowerShell / Python / email / extracted
--                                      PDF / Office text in the future)
--   5. redb_iocs source_type ALTER    (extends Enum8 with text_raw/text_normalized
--                                      so JS — and any future text-based pipeline —
--                                      can distinguish IOCs found in the raw vs
--                                      normalised surface)
--   6. redb_iocs ioc_type ALTER       (adds registry_key=42 so HKLM/HKCU/HKEY_*
--                                      keys are extracted alongside file paths)
--
-- Decoded strings from JS still go into the shared code_binja_strings_raw
-- table (same schema used by DecompileBinja and DecompileAPK). JS
-- string_encoding values: hex, unicode, charcode, base64, concat. Plain long
-- literals are not extracted here — they're already in code_text_content and
-- scraped by the IOC pipeline over text_raw/text_normalized.
-- string_offset is the line number in the source file.
--
-- redb_js_features.script_type values (file format / container, first match):
--   jse, wsf, hta, embedded_html, wscript, esm, node_module, standalone, unknown
-- redb_js_features.detected_environment values (runtime by API surface, first
-- match):
--   wscript, browser_extension, service_worker, deno, node, browser, unknown

-- 1. Core features & obfuscation metrics (1 row per sample)
CREATE TABLE IF NOT EXISTS redb_js_features (
    sha256 FixedString(64),
    line_count UInt32,
    char_count UInt64,
    text_entropy Float64,
    max_line_length UInt32,
    avg_line_length Float64,
    is_minified UInt8,
    is_likely_obfuscated UInt8,
    obfuscator_name LowCardinality(String),
    obfuscation_score UInt8,
    obfuscation_techniques Array(String),
    eval_count UInt32,
    function_constructor_count UInt32,
    settimeout_setinterval_count UInt32,
    document_write_count UInt32,
    innerhtml_count UInt32,
    unescape_count UInt32,
    fromcharcode_count UInt32,
    atob_count UInt32,
    decodeuri_count UInt32,
    total_function_count UInt32,
    total_variable_count UInt32,
    max_nesting_depth UInt16,
    avg_identifier_length Float64,
    hex_string_count UInt32,
    unicode_escape_count UInt32,
    long_string_count UInt32,
    base64_string_count UInt32,
    comment_ratio Float64,
    script_type LowCardinality(String),
    detected_environment LowCardinality(String),
    analysis_date DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY sha256;

-- 2. Suspicious API calls (multi-row per sample)
--
-- `revealed_by_deobf` is 1 when the API only appears after the deobfuscation
-- pass (i.e. the call site is hidden in the raw artefact and surfaces only in
-- text_normalized). Useful for filtering "what did normalisation actually
-- buy us" without re-running the diff.
CREATE TABLE IF NOT EXISTS redb_js_suspicious_apis (
    sha256 FixedString(64),
    api_name String,
    api_category LowCardinality(String),
    call_count UInt32,
    line_numbers Array(UInt32),
    context_snippet String,
    revealed_by_deobf UInt8,
    analysis_date DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY (sha256, api_name);

-- 3. Deobfuscation results (1 row per sample)
CREATE TABLE IF NOT EXISTS redb_js_deobfuscation (
    sha256 FixedString(64),
    deobfuscator_used LowCardinality(String),
    deobfuscation_successful UInt8,
    original_size UInt64,
    deobfuscated_size UInt64,
    size_change_ratio Float64,
    original_entropy Float64,
    deobfuscated_entropy Float64,
    new_strings_found UInt32,
    new_apis_found UInt32,
    deobfuscated_sha256 FixedString(64),
    analysis_date DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY sha256;

-- 4. Generic text-content table for any text-based artefact (JS today;
--    PowerShell, Python, plain text, email bodies, extracted PDF/Office text
--    in the future). One row per sha256. content_type carries the magika
--    label so callers can filter without joining other tables.
CREATE TABLE IF NOT EXISTS code_text_content (
    sha256 FixedString(64),
    content_type LowCardinality(String),
    text_raw String CODEC(ZSTD(3)),
    text_normalized Nullable(String) CODEC(ZSTD(3)),
    normalizer_used Nullable(String),
    analysis_date DateTime64(3, 'UTC')
) ENGINE = ReplacingMergeTree(analysis_date)
ORDER BY sha256;

-- 5. Extend redb_iocs.source_type Enum8 with two universal text-content
--    surfaces: text_raw (the artefact's original text) and text_normalized
--    (a deobfuscated/canonicalised form). Used by the JS IOC extraction
--    pipeline today; any future text-based pipeline (PowerShell, PDF, etc.)
--    plugs into the same two values.
--
-- Existing rows keep their stored integer values; only newly-inserted rows
-- can use 4/5. The MODIFY COLUMN must list the full final enum, including
-- the existing values (1/2/3) — ClickHouse rejects partial alters.
ALTER TABLE redb_iocs
    MODIFY COLUMN source_type
    Enum8('decompiled_function'=1, 'disassembled_function'=2, 'string'=3,
          'text_raw'=4, 'text_normalized'=5);

-- 6. Extend redb_iocs.ioc_type Enum8 with registry_key=42. Windows registry
--    paths (HKLM\..., HKCU\..., HKEY_LOCAL_MACHINE\...) are a distinct class
--    of IOC from filesystem paths and were previously extracted by nothing.
--    Same MODIFY COLUMN constraint as the source_type alter — the full final
--    enum must be listed.
ALTER TABLE redb_iocs
    MODIFY COLUMN ioc_type
    Enum8('ipv4'=1, 'ipv6'=2, 'fqdn'=3, 'url'=4, 'email'=5, 'server'=6,
          'hash_md5'=10, 'hash_sha1'=11, 'hash_sha256'=12,
          'cve'=20, 'cwe'=21, 'cpe'=22,
          'crypto_btc'=30, 'crypto_eth'=31, 'crypto_xrp'=32, 'crypto_bch'=33,
          'crypto_ada'=34, 'crypto_substrate'=35,
          'path_linux'=40, 'path_windows'=41, 'registry_key'=42,
          'onion'=50);

-- 7. Migrate redb_js_features to the two-tier obfuscation verdict.
--    `is_obfuscated` (binary heuristic at score >=40) is renamed to
--    `is_likely_obfuscated` (heuristic at >=60 + ≥1 strong signal, OR
--    js-x-ray flagged the obfuscator family). `obfuscator_name` is the
--    family name reported by @nodesecure/js-x-ray (jsfuck, obfuscator.io,
--    morse, jjencode, freejsobfuscator, ...) or empty when not detected.
--
--    Run once against an existing deployment. The CREATE TABLE above
--    already reflects the post-migration shape, so fresh installs skip this.
ALTER TABLE redb_js_features
    RENAME COLUMN is_obfuscated TO is_likely_obfuscated;
ALTER TABLE redb_js_features
    ADD COLUMN IF NOT EXISTS obfuscator_name LowCardinality(String) AFTER is_likely_obfuscated;

-- 8. Harmonise code_text_content column names with redb_iocs.source_type
--    enum values. The enum already uses `text_raw` / `text_normalized` for
--    the surface labels; the table previously stored the same data under
--    `content_raw` / `content_normalized`, forcing every join across the two
--    to translate names. Renaming the columns produces a self-documenting
--    schema where `redb_iocs.source_type='text_raw'` points directly at
--    `code_text_content.text_raw`.
--
--    Run once against an existing deployment. The CREATE TABLE above
--    already reflects the post-migration shape, so fresh installs skip this.
ALTER TABLE code_text_content
    RENAME COLUMN content_raw TO text_raw;
ALTER TABLE code_text_content
    RENAME COLUMN content_normalized TO text_normalized;

-- 9. Add revealed_by_deobf flag to redb_js_suspicious_apis. The strings/APIs
--    extractors now scan both the raw source and the deobfuscated text so APIs
--    hidden behind one obfuscation layer (Vjw0rm-style array.join + eval,
--    Dean-Edwards packers, ...) surface in the table. The flag is 1 only when
--    the API was *not* found in the raw source — querying for it isolates
--    "deobf-only" findings without joining redb_js_deobfuscation.
--
--    Run once against an existing deployment. The CREATE TABLE above
--    already reflects the post-migration shape, so fresh installs skip this.
ALTER TABLE redb_js_suspicious_apis
    ADD COLUMN IF NOT EXISTS revealed_by_deobf UInt8 AFTER context_snippet;