IL257893B - Secure just-in-time (jit) code generation - Google Patents

Secure just-in-time (jit) code generation

Info

Publication number
IL257893B
IL257893B IL257893A IL25789318A IL257893B IL 257893 B IL257893 B IL 257893B IL 257893 A IL257893 A IL 257893A IL 25789318 A IL25789318 A IL 25789318A IL 257893 B IL257893 B IL 257893B
Authority
IL
Israel
Prior art keywords
code generation
time safe
compiler code
safe compiler
time
Prior art date
Application number
IL257893A
Other languages
English (en)
Hebrew (he)
Other versions
IL257893A (en
Inventor
Yavo Udi
Original Assignee
Ensilo Ltd
Fortinet Inc
Yavo Udi
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ensilo Ltd, Fortinet Inc, Yavo Udi filed Critical Ensilo Ltd
Publication of IL257893A publication Critical patent/IL257893A/en
Publication of IL257893B publication Critical patent/IL257893B/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45516Runtime code conversion or optimisation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45516Runtime code conversion or optimisation
    • G06F9/4552Involving translation to a different instruction set architecture, e.g. just-in-time translation in a JVM
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Virology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)
IL257893A 2017-03-05 2018-03-05 Secure just-in-time (jit) code generation IL257893B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US15/449,965 US10795989B2 (en) 2017-03-05 2017-03-05 Secure just-in-time (JIT) code generation

Publications (2)

Publication Number Publication Date
IL257893A IL257893A (en) 2018-04-30
IL257893B true IL257893B (en) 2022-01-01

Family

ID=61557080

Family Applications (1)

Application Number Title Priority Date Filing Date
IL257893A IL257893B (en) 2017-03-05 2018-03-05 Secure just-in-time (jit) code generation

Country Status (6)

Country Link
US (1) US10795989B2 (https=)
EP (1) EP3373133B1 (https=)
JP (1) JP2018152061A (https=)
CA (1) CA2996747C (https=)
IL (1) IL257893B (https=)
SG (1) SG10201801669XA (https=)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11822654B2 (en) * 2017-04-20 2023-11-21 Morphisec Information Security 2014 Ltd. System and method for runtime detection, analysis and signature determination of obfuscated malicious code
CN113360134B (zh) * 2020-03-06 2022-06-17 武汉斗鱼网络科技有限公司 安全验证程序的生成方法、装置、设备和存储介质
US11487565B2 (en) * 2020-10-29 2022-11-01 Hewlett Packard Enterprise Development Lp Instances of just-in-time (JIT) compilation of code using different compilation settings
US11816484B2 (en) 2020-10-30 2023-11-14 Apple Inc. Hardware verification of dynamically generated code
EP4715638A1 (de) * 2024-09-23 2026-03-25 Siemens Aktiengesellschaft Ausführen von anwendungen auf einem sicheren system einer industriellen anlage

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7600222B2 (en) * 2002-01-04 2009-10-06 Microsoft Corporation Systems and methods for managing drivers in a computing system
US7219329B2 (en) * 2003-06-13 2007-05-15 Microsoft Corporation Systems and methods providing lightweight runtime code generation
JP2006048186A (ja) * 2004-08-02 2006-02-16 Hitachi Ltd 動的コンパイラの生成コードを保護する言語処理系
US7603712B2 (en) * 2005-04-21 2009-10-13 Microsoft Corporation Protecting a computer that provides a Web service from malware
US20070283336A1 (en) * 2006-06-01 2007-12-06 Michael Karl Gschwind System and method for just-in-time compilation in a heterogeneous processing environment
US20080127142A1 (en) * 2006-11-28 2008-05-29 Microsoft Corporation Compiling executable code into a less-trusted address space
US8156093B2 (en) * 2009-03-10 2012-04-10 Microsoft Corporaton Memory object sharing for just in time compiled data
US8677329B2 (en) * 2009-06-03 2014-03-18 Apple Inc. Methods and apparatuses for a compiler server
JP6555981B2 (ja) * 2015-08-24 2019-08-07 キヤノン株式会社 情報処理装置及びその制御方法
US10303885B2 (en) * 2016-03-02 2019-05-28 Apple Inc. Methods and systems for securely executing untrusted software

Also Published As

Publication number Publication date
EP3373133A1 (en) 2018-09-12
JP2018152061A (ja) 2018-09-27
IL257893A (en) 2018-04-30
CA2996747C (en) 2026-02-10
US20180253549A1 (en) 2018-09-06
HK1255149A1 (en) 2019-08-09
US10795989B2 (en) 2020-10-06
CA2996747A1 (en) 2018-09-05
SG10201801669XA (en) 2018-10-30
EP3373133B1 (en) 2021-02-24

Similar Documents

Publication Publication Date Title
GB2569276B (en) Compiler method
IL253072A0 (en) Adding commands in software code for self-defense of an application while running
EP2973170A4 (en) EXECUTION OF A PROFILING CODE
DK3051125T3 (da) Hvirvelgenerator til en rotorvinge
BR112015017663A2 (pt) código de exceção de vetor
DK3430713T3 (da) Positionskoder
CL2018000956S1 (es) Un respirador
FR3020160B1 (fr) Systeme d'execution de code avec mecanisme d'hypervision en aveugle
KR102606099B9 (ko) 고효율의 유기 발광 소자
DK3076542T3 (da) Støjregulering for en vindmølle
IL257893B (en) Secure just-in-time (jit) code generation
DK3140353T3 (da) En coating opløsning
HUE046551T2 (hu) Kód domain teljesítményvezérlés strukturált fényhez
EP3647916A4 (en) CODE GENERATION DEVICE
FR3027137B1 (fr) Generation d'un code graphique matriciel personnalise robuste
CL2018000585S1 (es) Generador a motor
EP3509652C0 (fr) Biomateriau a usage therapeutique
PL3350580T3 (pl) Urządzenie do emisji promieniowania elektromagnetycznego, w szczególności promieniowania UV
FR3043190B1 (fr) Refouloir a obus
DK3459083T3 (da) Fremgangsmåde til at tilvejebringe en neutronkilde
GB2538091B (en) Verifying correct code execution context
FR3037985B1 (fr) Menuiserie a frappe
SG11201610029RA (en) System for controlling a rankine cycle
DK3604802T3 (da) Energigenereringssystem
IL254336A0 (en) Novel treatment method