C. Chandra Sekhar

74 papers A* 1A 5B 15C 2Misc 4Journal 15Unranked 31
YearRankTypeTitle / Venue / Authors
2025 B conf
IJCNN
Subham Das, C. Chandra Sekhar
2025 A conf
WACV
Dhanunjaya Varma Devalraju, C. Chandra Sekhar
2024 B conf
ICIP
Subham Das, C. Chandra Sekhar
2024 conf
ICONIP (3)
Solarica Palit, C. Chandra Sekhar
2023 B conf
ACIVS
Naveen Vakada, C. Chandra Sekhar
2023 J jnl
CoRR
Vishwajit Kumar Vishnu, C. Chandra Sekhar
2023 B conf
ICIP
Hemalatha Munusamy, C. Chandra Sekhar
2023 J jnl
Appl. Intell.
Hemalatha Munusamy, C. Chandra Sekhar
2022 J jnl
Comput. Vis. Image Underst.
Hemalatha Munusamy, C. Chandra Sekhar
2021 J jnl
CoRR
Nauman Dawalatabad, Jilt Sebastian, Jom Kuriakose, C. Chandra Sekhar, Shrikanth Narayanan, Hema A. Murthy
2021 J jnl
IEEE ACM Trans. Audio Speech Lang. Process.
Nauman Dawalatabad, Srikanth R. Madikeri, C. Chandra Sekhar, Hema A. Murthy
2021 J jnl
CoRR
Rupam Ojha, C. Chandra Sekhar
2020 Misc conf
ICASSP
Ujjal Kr Dutta, C. Chandra Sekhar
2020 A conf
WACV
Hemalatha Munusamy, C. Chandra Sekhar
2020 A* conf
AAAI
Ujjal Kr Dutta, Mehrtash Harandi, C. Chandra Sekhar
2019 Misc conf
ICASSP
Nauman Dawalatabad, Srikanth R. Madikeri, C. Chandra Sekhar, Hema A. Murthy
2019 J jnl
CoRR
Nauman Dawalatabad, Srikanth R. Madikeri, C. Chandra Sekhar, Hema A. Murthy
2019 B conf
IJCNN
Rupam Ojha, C. Chandra Sekhar
2018 conf
ICANN (1)
Ujjal Kr Dutta, C. Chandra Sekhar
2018 J jnl
Pattern Anal. Appl.
B. S. Shajee Mohan, C. Chandra Sekhar
2018 B conf
ICIP
Ujjal Kr Dutta, C. Chandra Sekhar
2017 conf
PReMI
Abhiram Kumar Singh, C. Chandra Sekhar
2017 conf
ICAPR
B. S. Shajee Mohan, C. Chandra Sekhar
2017 conf
PReMI
Aditya Mehta, C. Chandra Sekhar
2017 conf
PReMI
Aritra Ghosh, C. Chandra Sekhar
2016 A conf
INTERSPEECH
Nauman Dawalatabad, Srikanth R. Madikeri, C. Chandra Sekhar, Hema A. Murthy
2015 conf
ICPRAM (2)
Niharjyoti Sarangi, C. Chandra Sekhar
2015 C conf
ICMLA
Abhijeet Sachdev, Veena Thenkanidiyoor, Aroor Dinesh Dileep, C. Chandra Sekhar
2014 C conf
ICPRAM
B. Balasanjeevi, C. Chandra Sekhar
2014 J jnl
Speech Commun.
Aroor Dinesh Dileep, C. Chandra Sekhar
2014 conf
ICVGIP
Ramya K. Raman, C. Chandra Sekhar
2014 ed.
IC3
Manish Parashar, Umesh Bellur, S. D. Madhu Kumar, Priya Chandran, Murali Krishnan, Kamesh Madduri, Sushil K. Prasad, C. Chandra Sekhar, Nanjangud C. Narendra, Carlos Valera, Sanjay Chaudhary, Kavi Arya, Xiaolin Li
2014 conf
ICVGIP
Shrikant Nayak, C. Chandra Sekhar
2013 J jnl
Pattern Anal. Appl.
Venkataramana B. Kini, C. Chandra Sekhar
2013 J jnl
IEEE ACM Trans. Audio Speech Lang. Process.
Aroor Dinesh Dileep, C. Chandra Sekhar
2013 Misc conf
ICASSP
Aroor Dinesh Dileep, C. Chandra Sekhar
2013 J jnl
Appl. Soft Comput.
Venkataramana B. Kini, C. Chandra Sekhar
2012 conf
ICIAR (2)
B. S. Shajee Mohan, C. Chandra Sekhar
2012 J jnl
Int. J. Speech Technol.
Aroor Dinesh Dileep, C. Chandra Sekhar
2010 J jnl
Int. J. Data Min. Model. Manag.
S. Chandrakala, C. Chandra Sekhar
2009 conf
ICAPR
Anupam Mandal, K. R. Prasanna Kumar, G. Athithan, C. Chandra Sekhar
2009 conf
ICAPR
Venkataramana B. Kini, C. Chandra Sekhar
2009 conf
PReMI
S. Chandrakala, C. Chandra Sekhar
2009 conf
ICAPR
S. Chandrakala, C. Chandra Sekhar
2009 conf
ICAPR
Sheetal Reddy Pamudurthy, C. Chandra Sekhar
2009 conf
PReMI
Ved Prakash Sahu, Harendra Kumar Mishra, C. Chandra Sekhar
2009 conf
ICAPR
Harendra Kumar Mishra, C. Chandra Sekhar
2008 B conf
IJCNN
S. Chandrakala, C. Chandra Sekhar
2008 conf
ICONIP (2)
A. Vijaya Rama Raju, C. Chandra Sekhar
2008 B conf
IJCNN
G. Haranadh, C. Chandra Sekhar
2008 B conf
ICPR
Venkataramana B. Kini, C. Chandra Sekhar
2008 conf
EUSIPCO
Sadhana Chevireddy, Hema A. Murthy, C. Chandra Sekhar
2007 conf
ISNN (1)
R. Anitha, C. Chandra Sekhar
2007 B conf
IJCNN
R. Anitha, C. Chandra Sekhar
2007 conf
ICANN (1)
Lakshmi Narayana Panuku, C. Chandra Sekhar
2007 conf
ICCTA
Venkataramana B. Kini, C. Chandra Sekhar
2007 B conf
IJCNN
Sheetal Reddy Pamudurthy, S. Chandrakala, C. Chandra Sekhar
2007 conf
ICONIP (2)
Venkataramana B. Kini, C. Chandra Sekhar
2007 conf
ICONIP (1)
Lakshmi Narayana Panuku, C. Chandra Sekhar
2007 conf
ICANN (2)
H. Swethalakshmi, C. Chandra Sekhar, V. Srinivasa Chakravarthy
2006 B conf
IJCNN
D. Srikrishna Satish, C. Chandra Sekhar
2005 conf
NOLISP
Suryakanth V. Gangashetty, C. Chandra Sekhar, B. Yegnanarayana
2004 B conf
ICONIP
R. Suguna, N. Sudha, C. Chandra Sekhar
2004 B conf
ICONIP
D. Srikrishna Satish, C. Chandra Sekhar
2003 B conf
IJCNN
Suryakanth V. Gangashetty, K. Sreenivasa Rao, A. Nayeemulla Khan, C. Chandra Sekhar, Bayya Yegnanarayana
2003 conf
ICASSP (2)
Suryakanth V. Gangashetty, C. Chandra Sekhar, B. Yegnanarayana
2003 A conf
ICME
Suryakanth V. Gangashetty, C. Chandra Sekhar, B. Yegnanarayana
2002 J jnl
IEEE Trans. Speech Audio Process.
C. Chandra Sekhar, B. Yegnanarayana
2002 A conf
INTERSPEECH
Weifeng Lee, C. Chandra Sekhar, Kazuya Takeda, Fumitada Itakura
1998 Misc conf
VLSI Design
Ansgar Drolshagen, Walter Anheier, C. Chandra Sekhar
1996 conf
ICNN
C. Chandra Sekhar, B. Yegnanarayana
1991 conf
EUROSPEECH
A. S. Madhukumar, S. Rajendran, C. Chandra Sekhar, B. Yegnanarayana
1989 conf
EUROSPEECH
M. Prakash, G. V. Ramana Rao, C. Chandra Sekhar, B. Yegnanarayana
1987 conf
ECST
P. Eswar, S. K. Gupta, C. Chandra Sekhar, B. Yegnanarayana, K. Nagamma Reddy
redb/extractors/apk_extractors/apk_native_libs.py
← Index redb/extractors/apk_extractors/apk_native_libs.py python
import fnmatch
import hashlib
import inspect
from datetime import datetime, timezone
from typing import Any

from redb.extractors.enum import Tag
from redb.extractors.apk_extractor import APKExtractor
from redb.models.dataclasses import APKNativeLib

# Known packer/protector native library names
KNOWN_PACKER_LIBS = {
    # Jiagu (360/Qihoo)
    "libjiagu.so", "libjiagu_a64.so", "libjiagu_x86.so", "libjiagu_x64.so",
    # Bangcle/SecNeo
    "libsecexe.so", "libsecmain.so", "libSecShell.so",
    # Baidu
    "libbaiduprotect.so",
    # Tencent (Legu)
    "libtxAppProtect.so", "libBugly.so",
    # iJiami
    "libexec.so", "libexecmain.so",
    # Alibaba
    "libmobisec.so", "libaliprotect.so",
    # APKProtect
    "libAPKProtect.so",
    # Pangxie (Pangolin)
    "libdexjni.so",
    # DexProtector
    "libdexprotector.so",
    # AppSolid
    "libAppSolid.so",
    # Kiwisec
    "libkwscmm.so",
    # DingXiang
    "libx3g.so",
    # NQ Shield
    "libnqshield.so",
    # Generic / other
    "libprotectClass.so",
    "libDexHelper.so",
    "libdexloader.so",
    "libfdog.so",
}

# Glob-style patterns for packer libs (e.g. libshella-*.so)
KNOWN_PACKER_PATTERNS = [
    "libshella-*.so",
    "libshell-super.*.so",
]


def is_known_packer_lib(filename):
    """Check if a native library filename matches known packer signatures."""
    if filename in KNOWN_PACKER_LIBS:
        return True
    for pattern in KNOWN_PACKER_PATTERNS:
        if fnmatch.fnmatch(filename, pattern):
            return True
    return False


class APKNativeLibExtractor(APKExtractor):

    def __init__(
        self, filepath, log, exporters=None, index_prefix=None,
        known_benign=False, known_malicious=False,
        apk=None,
    ):
        super().__init__(
            filepath, log, exporters, index_prefix,
            known_benign, known_malicious, apk,
        )
        self.native_libs = []
        self.abis = set()
        self.log.debug(inspect.currentframe().f_code.co_name)

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

    def extract(self):
        if not self._is_valid_apk():
            self.log.error(f"Invalid APK for {self.hash.sha256}")
            return None

        self.native_libs = []
        self.abis = set()

        zf = self._get_zip_file()
        if not zf:
            return None

        with zf:
            for info in zf.infolist():
                if not (info.filename.startswith("lib/") and info.filename.endswith(".so")):
                    continue
                parts = info.filename.split("/")
                if len(parts) < 3:
                    continue

                abi = parts[1]
                filename = parts[-1]
                self.abis.add(abi)

                try:
                    data = zf.read(info.filename)
                    lib_sha256 = hashlib.sha256(data).hexdigest()
                except Exception as e:
                    self.log.warning(f"Error reading native lib {info.filename}: {e}")
                    continue

                self.native_libs.append(APKNativeLib(
                    abi=abi,
                    filename=filename,
                    size=info.file_size,
                    sha256=lib_sha256,
                    is_known_packer=is_known_packer_lib(filename),
                ))

        if not self.native_libs:
            return None

        return {
            "native_lib_count": len(self.native_libs),
            "abis": sorted(self.abis),
            "native_libs": self.native_libs,
            "known_packer_libs": [
                lib for lib in self.native_libs if lib.is_known_packer
            ],
        }

    def prepare_export_data(self, exporter_type: str) -> Any:
        if exporter_type == "ClickHouseExporter":
            if not self.native_libs:
                return None

            current_time = datetime.now(timezone.utc)
            data = []
            for lib in self.native_libs:
                data.append([
                    self.sha256,
                    lib.abi,
                    lib.filename,
                    lib.size,
                    lib.sha256,
                    int(lib.is_known_packer),
                    current_time,
                ])

            column_names = [
                'sha256', 'lib_abi', 'lib_filename', 'lib_size',
                'lib_sha256', 'lib_is_known_packer', 'analysis_date',
            ]

            column_type_names = [
                'FixedString(64)', 'LowCardinality(String)', 'String', 'UInt64',
                'FixedString(64)', 'UInt8', "DateTime64(3, 'UTC')",
            ]

            return (data, column_names, column_type_names)

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