Ikhyun Lee

24 papers C 2Journal 21Unranked 1
YearRankTypeTitle / Venue / Authors
2024 J jnl
CoRR
Howard Zhang, Yunhao Ba, Ethan Yang, Rishi Upadhyay, Alex Wong, Achuta Kadambi, Yun Guo, Xueyao Xiao, Xiaoxiong Wang, Yi Li, Yi Chang, Luxin Yan, Chaochao Zheng, Luping Wang, Bin Liu, Sunder Ali Khowaja, Jiseok Yoon, Ikhyun Lee, Zhao Zhang, Yanyan Wei, Jiahuan Ren, Suiyi Zhao, Huan Zheng
2024 conf
CVPR Workshops
Ren Yang, Radu Timofte, Bingchen Li, Xin Li, Mengxi Guo, Shijie Zhao, Li Zhang, Zhibo Chen, Dongyang Zhang, Yash Arora, Aditya Arora, Yuanbin Chen, Hui Tang, Tao Wang, Longxuan Zhao, Bin Chen, Tong Tong, Qiao Mo, Jingwei Bao, Jinhua Hao, Yukang Ding, Hantang Li, Ming Sun, Chao Zhou, Shuyuan Zhu, Zhi Jin, Wei Wang, Dandan Zhan, Jiawei Wu, Jiahao Wu, Luwei Tu, Hongyu An, Xinfeng Zhang, Woon-Ha Yeo, Wang-Taek Oh, Young-Il Kim, Han-Cheol Ryu, Long Sun, Mingjun Zhen, Jinshan Pan, Jiangxin Dong, Jinhui Tang, Yapeng Du, Ao Li, Ziyang He, Lei Luo, Ce Zhu, Xin Yao, Sunder Ali Khowaja, Ikhyun Lee, Jaeho Lee, Seongwan Kim, SMA Sharif, Nodirkhuja Khujaev, Roman Tsoy
2023 J jnl
IEEE Trans. Ind. Informatics
Sunder Ali Khowaja, Parus Khuwaja, Kapal Dev, Ikhyun Lee, Wali Ullah Khan, Weizheng Wang, Nawab Muhammad Faseeh Qureshi, Maurizio Magarini
2023 J jnl
Comput. Vis. Image Underst.
Usman Ali, Ikhyun Lee, Muhammad Tariq Mahmood
2022 J jnl
IEEE Access
Fahad Ashiq, Muhammad Asif, Maaz Bin Ahmad, Sadia Zafar, Khalid Masood, Toqeer Mahmood, Muhammad Tariq Mahmood, Ikhyun Lee
2022 J jnl
Comput. Medical Imaging Graph.
Muhammad Tariq Mahmood, Ikhyun Lee
2022 J jnl
J. King Saud Univ. Comput. Inf. Sci.
Usman Ali, Ikhyun Lee, Muhammad Tariq Mahmood
2021 J jnl
IEEE Access
Ayesha Khan, Ali Javed, Muhammad Tariq Mahmood, Muhammad Hamza Arif Khan, Ikhyun Lee
2021 J jnl
Pattern Recognit.
Usman Ali, Ikhyun Lee, Muhammad Tariq Mahmood
2020 J jnl
BMC Medical Informatics Decis. Mak.
Maliazurina Saad, Ikhyun Lee
2020 J jnl
IEEE Access
Muhammad Tariq Mahmood, Ikhyun Lee
2019 J jnl
IEEE Access
Muhammad Tariq Mahmood, Ikhyun Lee
2019 J jnl
Int. J. Imaging Syst. Technol.
Maliazurina Saad, Ikhyun Lee, Tae-Sun Choi
2019 J jnl
IEEE Access
Barmak Heshmat, Krishna Rastogi, Ramesh Raskar, Ikhyun Lee
2019 J jnl
IEEE Access
Muhammad Ehatisham-ul-Haq, Ali Javed, Muhammad Awais Azam, Hafiz Malik, Aun Irtaza, Ikhyun Lee, Muhammad Tariq Mahmood
2017 J jnl
Inf. Sci.
Ikhyun Lee, Muhammad Tariq Mahmood
2015 J jnl
IEEE Geosci. Remote. Sens. Lett.
Ikhyun Lee, Muhammad Tariq Mahmood
2015 J jnl
ACM Trans. Graph.
Tristan Swedish, Karin Roesch, Ikhyun Lee, Krishna Rastogi, Shoshana Bernstein, Ramesh Raskar
2014 J jnl
Multim. Tools Appl.
Ikhyun Lee, Muhammad Tariq Mahmood, Seong-O Shim, Tae-Sun Choi
2013 J jnl
IEEE Trans. Circuits Syst. Video Technol.
Ikhyun Lee, Tae-Sun Choi
2013 C conf
ICCE
Ikhyun Lee, Muhammad Tariq Mahmood, Seong-O Shim, Sung-An Lee, Tae-Sun Choi
2013 J jnl
Sensors
Ikhyun Lee, Muhammad Tariq Mahmood, Tae-Sun Choi
2012 J jnl
Entropy
Ikhyun Lee, Doo-Chun Seo, Tae-Sun Choi
2012 C conf
ICCE
Ikhyun Lee, Tae-Sun Choi
redb/extractors/apk_extractor.py
← Index redb/extractors/apk_extractor.py python
import logging
import zipfile
from abc import ABCMeta, abstractmethod

from redb.extractors.extractor import Extractor

logger = logging.getLogger(__name__)


@abstractmethod
class APKExtractor(Extractor, metaclass=ABCMeta):

    def __init__(
        self,
        filepath,
        log,
        exporters=None,
        index_prefix=None,
        known_benign=False,
        known_malicious=False,
        apk=None,
    ):
        # Read binary data before calling super().__init__ so that the
        # binary property override is available during hash computation.
        with open(filepath, "rb") as f:
            self._binary_data = f.read()

        self.apk = apk if apk else self._generate_apk_object(filepath)

        super().__init__(
            filepath,
            log,
            exporters,
            index_prefix,
            known_benign=known_benign,
            known_malicious=known_malicious,
        )

    @property
    def binary(self):
        """Override to use already-read binary data."""
        return self._binary_data

    def _generate_apk_object(self, filepath):
        """Parse APK using androguard."""
        apk = None
        try:
            # Suppress verbose androguard loguru DEBUG/INFO output
            from loguru import logger as loguru_logger
            loguru_logger.disable("androguard")
            from androguard.core.apk import APK
            apk = APK(filepath)
            if not apk.is_valid_APK():
                logger.warning(
                    f"APK validation warning for {filepath}"
                )
                # Still return the object — partial parsing may still work
        except Exception as e:
            logger.error(
                f"Format error parsing APK {filepath}: {e}"
            )
        return apk

    def _is_valid_apk(self):
        """Check if the APK object was parsed successfully."""
        return self.apk is not None

    def _get_zip_file(self):
        """Get a zipfile.ZipFile handle for direct archive inspection."""
        try:
            return zipfile.ZipFile(self.filepath, 'r')
        except (zipfile.BadZipFile, Exception) as e:
            self.log.error(f"Failed to open APK as ZIP: {e}")
            return None

    def _list_files(self):
        """List all files in the APK archive."""
        if not self._is_valid_apk():
            return []
        try:
            return self.apk.get_files()
        except Exception as e:
            self.log.error(f"Error listing APK files: {e}")
            return []