Ilya P. Razenshteyn

79 papers A* 25A 4B 2Misc 1Journal 42Unranked 4
YearRankTypeTitle / Venue / Authors
2023 J jnl
IEEE Data Eng. Bull.
Yihe Dong, Piotr Indyk, Ilya P. Razenshteyn, Tal Wagner
2022 A* conf
COLT
Meena Jagadeesan, Ilya P. Razenshteyn, Suriya Gunasekar
2021 A* conf
SODA
Alexandr Andoni, Aleksandar Nikolov, Ilya P. Razenshteyn, Erik Waingarten
2021 J jnl
CoRR
Meena Jagadeesan, Ilya P. Razenshteyn, Suriya Gunasekar
2020 J jnl
CoRR
Yihe Dong, Yu Gao, Richard Peng, Ilya P. Razenshteyn, Saurabh Sawlani
2020 A* conf
ICLR
Yihe Dong, Piotr Indyk, Ilya P. Razenshteyn, Tal Wagner
2020 conf
ASIACRYPT (3)
Hao Chen, Miran Kim, Ilya P. Razenshteyn, Dragos Rotaru, Yongsoo Song, Sameer Wagh
2020 J jnl
IACR Cryptol. ePrint Arch.
Hao Chen, Miran Kim, Ilya P. Razenshteyn, Dragos Rotaru, Yongsoo Song, Sameer Wagh
2020 J jnl
CoRR
Sepideh Mahabadi, Ilya P. Razenshteyn, David P. Woodruff, Samson Zhou
2020 A* conf
STOC
Sepideh Mahabadi, Ilya P. Razenshteyn, David P. Woodruff, Samson Zhou
2020 A* conf
ICML
Greg Yang, Tony Duan, J. Edward Hu, Hadi Salman, Ilya P. Razenshteyn, Jerry Li
2020 J jnl
CoRR
Greg Yang, Tony Duan, J. Edward Hu, Hadi Salman, Ilya P. Razenshteyn, Jerry Li
2020 A* conf
USENIX Security Symposium
Hao Chen, Ilaria Chillotti, Yihe Dong, Oxana Poburinnaya, Ilya P. Razenshteyn, M. Sadegh Riazi
2020 A* conf
ICML
Arturs Backurs, Yihe Dong, Piotr Indyk, Ilya P. Razenshteyn, Tal Wagner
2020 A conf
AISTATS
Amir Zandieh, Navid Nouri, Ameya Velingker, Michael Kapralov, Ilya P. Razenshteyn
2020 J jnl
CoRR
Michael Kapralov, Navid Nouri, Ilya P. Razenshteyn, Ameya Velingker, Amir Zandieh
2019 A* conf
ICML
Sébastien Bubeck, Yin Tat Lee, Eric Price, Ilya P. Razenshteyn
2019 J jnl
CoRR
Yihe Dong, Piotr Indyk, Ilya P. Razenshteyn, Tal Wagner
2019 A* conf
COLT
Jerry Li, Aleksandar Nikolov, Ilya P. Razenshteyn, Erik Waingarten
2019 J jnl
CoRR
Jerry Li, Aleksandar Nikolov, Ilya P. Razenshteyn, Erik Waingarten
2019 J jnl
SIAM J. Comput.
Konstantin Makarychev, Yury Makarychev, Ilya P. Razenshteyn
2019 A* conf
STOC
Konstantin Makarychev, Yury Makarychev, Ilya P. Razenshteyn
2019 A* conf
NeurIPS
Hadi Salman, Jerry Li, Ilya P. Razenshteyn, Pengchuan Zhang, Huan Zhang, Sébastien Bubeck, Greg Yang
2019 J jnl
CoRR
Hadi Salman, Greg Yang, Jerry Li, Pengchuan Zhang, Huan Zhang, Ilya P. Razenshteyn, Sébastien Bubeck
2019 J jnl
CoRR
Hao Chen, Ilaria Chillotti, Yihe Dong, Oxana Poburinnaya, Ilya P. Razenshteyn, M. Sadegh Riazi
2019 J jnl
IACR Cryptol. ePrint Arch.
Hao Chen, Ilaria Chillotti, Yihe Dong, Oxana Poburinnaya, Ilya P. Razenshteyn, M. Sadegh Riazi
2019 J jnl
CoRR
Yihe Dong, Piotr Indyk, Ilya P. Razenshteyn, Tal Wagner
2018 J jnl
CoRR
Sébastien Bubeck, Yin Tat Lee, Eric Price, Ilya P. Razenshteyn
2018 J jnl
CoRR
Sébastien Bubeck, Eric Price, Ilya P. Razenshteyn
2018 J jnl
CoRR
Alexandr Andoni, Piotr Indyk, Ilya P. Razenshteyn
2018 A* conf
STOC
Alexandr Andoni, Assaf Naor, Aleksandar Nikolov, Ilya P. Razenshteyn, Erik Waingarten
2018 A* conf
FOCS
Alexandr Andoni, Assaf Naor, Aleksandar Nikolov, Ilya P. Razenshteyn, Erik Waingarten
2018 J jnl
CoRR
Sepideh Mahabadi, Konstantin Makarychev, Yury Makarychev, Ilya P. Razenshteyn
2018 A* conf
STOC
Sepideh Mahabadi, Konstantin Makarychev, Yury Makarychev, Ilya P. Razenshteyn
2018 J jnl
CoRR
Konstantin Makarychev, Yury Makarychev, Ilya P. Razenshteyn
2018 J jnl
SIAM J. Comput.
Alexandr Andoni, Robert Krauthgamer, Ilya P. Razenshteyn
2017 A* conf
STOC
Alexandr Andoni, Huy L. Nguyen, Aleksandar Nikolov, Ilya P. Razenshteyn, Erik Waingarten
2017
Ilya P. Razenshteyn
2017 A* conf
SODA
Alexandr Andoni, Ilya P. Razenshteyn, Negev Shekel Nosatzki
2017 A* conf
SODA
Alexandr Andoni, Thijs Laarhoven, Ilya P. Razenshteyn, Erik Waingarten
2017 conf
NIPS
Piotr Indyk, Ilya P. Razenshteyn, Tal Wagner
2017 J jnl
CoRR
Piotr Indyk, Ilya P. Razenshteyn, Tal Wagner
2016 J jnl
CoRR
Alexandr Andoni, Aleksandar Nikolov, Ilya P. Razenshteyn, Erik Waingarten
2016 J jnl
CoRR
Alexandr Andoni, Thijs Laarhoven, Ilya P. Razenshteyn, Erik Waingarten
2016 A* conf
SODA
Arturs Backurs, Piotr Indyk, Ilya P. Razenshteyn, David P. Woodruff
2016 A* conf
PODS
Thomas Dybdahl Ahle, Rasmus Pagh, Ilya P. Razenshteyn, Francesco Silvestri
2016 J jnl
CoRR
Alexandr Andoni, Thijs Laarhoven, Ilya P. Razenshteyn, Erik Waingarten
2016 J jnl
IEEE Trans. Inf. Theory
Zeyuan Allen Zhu, Rati Gelashvili, Ilya P. Razenshteyn
2016 A* conf
SoCG
Alexandr Andoni, Ilya P. Razenshteyn
2016 A* conf
STOC
Ilya P. Razenshteyn, Zhao Song, David P. Woodruff
2015 J jnl
Math. Program.
Daniel Delling, Daniel Fleischman, Andrew V. Goldberg, Ilya P. Razenshteyn, Renato F. Werneck
2015 J jnl
CoRR
Arturs Backurs, Piotr Indyk, Eric Price, Ilya P. Razenshteyn, David P. Woodruff
2015 J jnl
CoRR
Thomas D. Ahle, Rasmus Pagh, Ilya P. Razenshteyn, Francesco Silvestri
2015 A* conf
STOC
Alexandr Andoni, Ilya P. Razenshteyn
2015 J jnl
CoRR
Alexandr Andoni, Ilya P. Razenshteyn
2015 conf
NIPS
Alexandr Andoni, Piotr Indyk, Thijs Laarhoven, Ilya P. Razenshteyn, Ludwig Schmidt
2015 J jnl
CoRR
Alexandr Andoni, Piotr Indyk, Thijs Laarhoven, Ilya P. Razenshteyn, Ludwig Schmidt
2015 A* conf
SoCG
Zeyuan Allen Zhu, Rati Gelashvili, Ilya P. Razenshteyn
2015 A conf
ITCS
Silvio Lattanzi, Stefano Leonardi, Vahab S. Mirrokni, Ilya P. Razenshteyn
2015 A* conf
STOC
Alexandr Andoni, Robert Krauthgamer, Ilya P. Razenshteyn
2015 J jnl
CoRR
Alexandr Andoni, Ilya P. Razenshteyn
2014 A* conf
SODA
Alexandr Andoni, Piotr Indyk, Huy L. Nguyen, Ilya P. Razenshteyn
2014 J jnl
CoRR
Alexandr Andoni, Robert Krauthgamer, Ilya P. Razenshteyn
2014 J jnl
CoRR
Zeyuan Allen Zhu, Rati Gelashvili, Ilya P. Razenshteyn
2013 J jnl
CoRR
Alexandr Andoni, Piotr Indyk, Huy L. Nguyen, Ilya P. Razenshteyn
2013 J jnl
CoRR
Piotr Indyk, Ilya P. Razenshteyn
2013 conf
ICALP (1)
Piotr Indyk, Ilya P. Razenshteyn
2013 J jnl
CoRR
Andrew V. Goldberg, Ilya P. Razenshteyn, Ruslan Savchenko
2013 B conf
MFCS
Andrew V. Goldberg, Ilya P. Razenshteyn, Ruslan Savchenko
2012 A conf
ALENEX
Daniel Delling, Andrew V. Goldberg, Ilya P. Razenshteyn, Renato Fonseca F. Werneck
2012 J jnl
CoRR
Ilya P. Razenshteyn
2011 J jnl
CoRR
Ilya P. Razenshteyn
2011 A conf
IPDPS
Daniel Delling, Andrew V. Goldberg, Ilya P. Razenshteyn, Renato Fonseca F. Werneck
2011 J jnl
Theor. Comput. Sci.
Mikhail Andreev, Ilya P. Razenshteyn, Alexander Shen
2010 J jnl
CoRR
Maxim A. Babenko, Ignat I. Kolesnichenko, Ilya P. Razenshteyn
2010 B conf
SOFSEM
Maxim A. Babenko, Ignat I. Kolesnichenko, Ilya P. Razenshteyn
2010 J jnl
CoRR
Mikhail Andreev, Ilya P. Razenshteyn, Alexander Shen
2010 Misc conf
COCOON
Maxim A. Babenko, Alexey Gusakov, Ilya P. Razenshteyn
2010 J jnl
Discret. Math. Algorithms Appl.
Maxim A. Babenko, Alexey Gusakov, Ilya P. Razenshteyn
redb/extractors/pe_extractor.py
← Index redb/extractors/pe_extractor.py python
import logging
from abc import ABCMeta, abstractmethod
import inspect

import magic
import pefile
from dotnetfile import DotNetPE

from redb.extractors.extractor import Extractor

logger = logging.getLogger(__name__)


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

    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
        )
        self.pe = pe if pe else self._generate_pefile_object()
        self.dotnet = None

    def _generate_pefile_object(self):
        pe = None
        try:
            pe = pefile.PE(self.filepath)
            if not pe:
                raise pefile.PEFormatError("Empty file?")
        except pefile.PEFormatError as e:
            self.log.error(f"Format error {self.hash.sha256} Full error : {e}")
        return pe

    def _generate_dotnetfile_object(self):
        self.log.debug(inspect.currentframe().f_code.co_name)
        dotnet = None
        error = None
        try:
            dotnet = DotNetPE(self.filepath)
            if not dotnet:
                raise Exception("Empty file?")
        except Exception as e:
            self.log.error(
                f"Format error dotnet file {self.hash.sha256} Full error : {e}"
            )
            error = e
        return dotnet, error

    def _check_dotnet(self):
        try:
            file_type = magic.from_buffer(self.binary)
            if ".Net" in file_type:
                return True
            for entry in self.pe.OPTIONAL_HEADER.DATA_DIRECTORY:
                # IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR is typically 14
                if (
                    entry.name == "IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR"
                    and entry.Size > 0
                ):
                    return True
            return False
        except AttributeError as e:
            self.log.error(
                f"AttributeError error dotnet file {self.hash.sha256} Full error : {e}"
            )
            return False

    def _is_signed(self):
        address = self.pe.OPTIONAL_HEADER.DATA_DIRECTORY[
            pefile.DIRECTORY_ENTRY["IMAGE_DIRECTORY_ENTRY_SECURITY"]
        ].VirtualAddress
        if address == 0:
            return False
        return True

    def _has_overlay(self):
        return bool(self.pe.get_overlay())