Carlos H. Muravchik

53 papers Misc 6Journal 39Unranked 8
YearRankTypeTitle / Venue / Authors
2020 conf
EMBC
Mariano Fernández-Corazza, Sergei Turovets, Carlos H. Muravchik
2019 J jnl
IEEE J. Sel. Top. Appl. Earth Obs. Remote. Sens.
Santiago Ozafrain, Pedro A. Roncagliolo, Carlos H. Muravchik
2019 J jnl
IET Signal Process.
Juan Pablo Pascual, Nicolás von Ellenrieder, Javier A. Areta, Carlos H. Muravchik
2017 J jnl
IEEE Geosci. Remote. Sens. Lett.
Juan I. Fernandez-Michelli, Martin Hurtado, Javier A. Areta, Carlos H. Muravchik
2017 J jnl
Frontiers Neuroinformatics
Alejandro O. Blenkmann, Holly N. Phillips, Juan P. Princich, James B. Rowe, Tristan A. Bekinschtein, Carlos H. Muravchik, Silvia Kochen
2016 J jnl
IEEE Trans. Signal Process.
Javier G. García, Pedro A. Roncagliolo, Carlos H. Muravchik
2016 J jnl
Wirel. Pers. Commun.
Gustavo J. González, Fernando H. Gregorio, Juan E. Cousseau, Carlos H. Muravchik
2015 conf
SPAWC
Pedro A. Roncagliolo, Javier G. García, Carlos H. Muravchik
2015 J jnl
IEEE Trans. Signal Process.
Sebastian Pazos, Martin Hurtado, Carlos H. Muravchik, Arye Nehorai
2014 J jnl
IEEE Trans. Signal Process.
Juan Pablo Pascual, Nicolás von Ellenrieder, Martin Hurtado, Carlos H. Muravchik
2014 conf
SAM
Juan Pablo Pascual, Nicolás von Ellenrieder, Carlos H. Muravchik
2014 J jnl
NeuroImage
Nicolás von Ellenrieder, Leandro Beltrachini, Carlos H. Muravchik, Jean Gotman
2013 J jnl
Biomed. Signal Process. Control.
Mariano Fernández-Corazza, Leandro Beltrachini, Nicolás von Ellenrieder, Carlos H. Muravchik
2013 J jnl
IEEE Trans. Signal Process.
Martin Hurtado, Carlos H. Muravchik, Arye Nehorai
2011 J jnl
IEEE Trans. Signal Process.
Murat Akçakaya, Carlos H. Muravchik, Arye Nehorai
2011 J jnl
Comput. Methods Programs Biomed.
Leandro Beltrachini, Nicolás von Ellenrieder, Carlos H. Muravchik
2011 conf
CAMSAP
Sebastian Pazos, Martin Hurtado, Carlos H. Muravchik, Arye Nehorai
2010 J jnl
IEEE Trans. Signal Process.
Patricio S. La Rosa, Alexandre Renaux, Carlos H. Muravchik, Arye Nehorai
2009 J jnl
IEEE Trans. Biomed. Eng.
Nicolás von Ellenrieder, Carlos H. Muravchik, Michael Wagner, Arye Nehorai
2009 J jnl
Medical Biol. Eng. Comput.
Nicolás von Ellenrieder, Pedro A. Valdés-Hernández, Carlos H. Muravchik
2007 J jnl
Digit. Signal Process.
Pedro A. Roncagliolo, Javier G. García, P. I. Mercader, Daniel R. Fuhrmann, Carlos H. Muravchik
2006 conf
EMBC
Nicolás von Ellenrieder, Enrique Mario Spinelli, Carlos H. Muravchik
2006 J jnl
IEEE Trans. Biomed. Eng.
Nicolás von Ellenrieder, Carlos H. Muravchik, Arye Nehorai
2006 J jnl
IEEE Trans. Biomed. Eng.
Nannan Cao, Imam Samil Yetik, Arye Nehorai, Carlos H. Muravchik, Jens Haueisen
2006 J jnl
IEEE Trans. Biomed. Eng.
Nannan Cao, Imam Samil Yetik, Arye Nehorai, Carlos H. Muravchik, Jens Haueisen
2006 J jnl
IEEE Trans. Biomed. Eng.
Imam Samil Yetik, Arye Nehorai, Carlos H. Muravchik, Jens Haueisen, Michael Eiselt
2005 J jnl
IEEE Trans. Biomed. Eng.
Nicolás von Ellenrieder, Carlos H. Muravchik, Arye Nehorai
2005 J jnl
Signal Process.
Ruben H. Milocco, Carlos H. Muravchik
2005 J jnl
IEEE Trans. Biomed. Eng.
Imam Samil Yetik, Arye Nehorai, Jeffrey David Lewine, Carlos H. Muravchik
2005 J jnl
IEEE Trans. Biomed. Eng.
Imam Samil Yetik, Arye Nehorai, Carlos H. Muravchik, Jens Haueisen
2005 J jnl
IEEE Trans. Biomed. Eng.
Nicolás von Ellenrieder, Carlos H. Muravchik, Arye Nehorai
2004 J jnl
EURASIP J. Adv. Signal Process.
Pedro D. Doñate, Carlos H. Muravchik, Juan E. Cousseau
2004 J jnl
IEEE Trans. Biomed. Eng.
David Gutiérrez, Arye Nehorai, Carlos H. Muravchik
2004 conf
ISBI
Imam Samil Yetik, Arye Nehorai, Carlos H. Muravchik, Jens Haueisen
2003 J jnl
IEEE Trans. Signal Process.
Ruben H. Milocco, Carlos H. Muravchik
2003 J jnl
Appl. Math. Comput.
María Etchechoury, Carlos H. Muravchik
2001 J jnl
IEEE Trans. Instrum. Meas.
Martin Hurtado, Hugo Lorente, Carlos H. Muravchik
2001 J jnl
IEEE Trans. Ind. Electron.
Sergio A. González, María Inés Valla, Carlos H. Muravchik
2001 J jnl
IEEE Trans. Signal Process.
Carlos H. Muravchik, Arye Nehorai
2001 conf
ISCAS (2)
Pedro D. Doñate, Carlos H. Muravchik, Juan E. Cousseau
2000 Misc conf
ICASSP
Carlos H. Muravchik, Arye Nehorai
2000 J jnl
IEEE Trans. Ind. Electron.
Jorge A. Solsona, María Inés Valla, Carlos H. Muravchik
1999 conf
ISCAS (4)
Pedro D. Doñate, Carlos H. Muravchik, Juan E. Cousseau
1998 J jnl
IEEE Trans. Signal Process.
Petr Tichavský, Carlos H. Muravchik, Arye Nehorai
1996 J jnl
IEEE Trans. Ind. Electron.
Jorge A. Solsona, María Inés Valla, Carlos H. Muravchik
1996 J jnl
Int. J. Syst. Sci.
María Etchechoury, Jorge A. Solsona, Carlos H. Muravchik
1995 J jnl
Signal Process.
Roxana Ojeda, Eugenio J. Tacconi, Carlos H. Muravchik
1991 Misc conf
ICASSP
Constantino Rago, Carlos H. Muravchik
1988 J jnl
IEEE Trans. Acoust. Speech Signal Process.
Carlos H. Muravchik, Hugo Esteban Löffler
1984 Misc conf
ICASSP
Carlos H. Muravchik, Martin Morf
1983 Misc conf
ICASSP
Carlos H. Muravchik, Martin Morf
1982 Misc conf
ICASSP
Martin Morf, Carlos H. Muravchik, Ping Ang, Jean-Marc Delosme
1981 Misc conf
ICASSP
Martin Morf, Carlos H. Muravchik, Daniel T. L. Lee
redb/extractors/pe_extractors/pe_imports.py
← Index redb/extractors/pe_extractors/pe_imports.py python
import inspect
from typing import Any, List, Tuple
from datetime import datetime, timezone

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


class PEImportExtractor(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_imports"
        self.log.debug(inspect.currentframe().f_code.co_name)

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

    def _extract_imports(self):
        self.log.debug(inspect.currentframe().f_code.co_name)

        imports_symbols = []
        imports_lib = []
        imports_total = 0
        # pe_import = None
        try:
            directory_entry_import = getattr(self.pe, "DIRECTORY_ENTRY_IMPORT", [])
            imports_total = len(directory_entry_import)
            for entry in directory_entry_import:
                symbols = []
                tmp_import = {}
                libname = entry.dll.decode() if entry.dll else ""
                imports_lib.append(libname)
                # replace . with _ to avoid issues with elastic
                # entryname = entryname.replace(".", "_")
                for symbol in entry.imports:
                    if symbol.name:
                        symbols.append(symbol.name.decode())
                # imports_symbols[entryname] = symbols
                tmp_import[libname] = symbols
                imports_symbols.append(tmp_import)
            return PEImport(
                pe_imports_total=imports_total,
                pe_import_libraryName=imports_lib if imports_lib else None,
                pe_import_functions=imports_symbols if imports_symbols else None,
            )
        except Exception as e:
            self.log.error(f"Extract imports error {self.hash.sha256} Exception: {e}")
        return pe_import

    def extract(self):
        try:
            self.log.debug(inspect.currentframe().f_code.co_name)
            return self._extract_imports()
        except Exception as e:
            self.log.error(f"Extract imports error {self.hash.sha256} Exception: {e}")
            return None

    def prepare_export_data(self, exporter_type: str) -> Any:
        if exporter_type == "ElasticsearchExporter":
            return self.extract()
        elif exporter_type == "ClickHouseExporter":
            imports = self.extract()
            if (
                imports is None
                or imports.pe_imports_total == 0
                or (
                    imports.pe_import_libraryName is None
                    and imports.pe_import_functions is None
                )
            ):
                return None

            # Flatten the data - one row per function import
            data = []
            current_time = datetime.now(timezone.utc)

            for lib_funcs in imports.pe_import_functions:
                for lib, funcs in lib_funcs.items():
                    for func in funcs:
                        data.append(
                            [
                                self.sha256,  # sha256
                                self.md5,  # md5
                                self.sha1,  # sha1
                                lib,  # library_name
                                func,  # function_name
                                current_time,  # analysis_date
                            ]
                        )

            column_names = [
                "sha256",
                "md5",
                "sha1",
                "library_name",
                "function_name",
                "analysis_date",
            ]

            column_type_names = [
                "FixedString(64)",
                "FixedString(32)",
                "FixedString(40)",
                "LowCardinality(Nullable(String))",
                "LowCardinality(Nullable(String))",
                "DateTime64(3, 'UTC')",
            ]

            if not data:
                return None

            return (data, column_names, column_type_names)

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