Microsoft는 Windows 용 eBPF 구현을 준비했습니다.

마이크로 소프트는 공개했다 최근 게시물을 통해 Windows 용 eBPF 하위 시스템 구현 이를 통해 운영 체제의 커널 수준에서 실행되는 임의의 드라이버를 실행할 수 있습니다.

eGMP 내장 바이트 코드 인터프리터를 제공합니다. 커널에서 사용자 공간로드 네트워크 드라이버, 액세스 제어 및 시스템 모니터링을 생성합니다. eBPF 3.18 버전부터 Linux 커널에 포함되었습니다. 수신 / 발신 네트워크 패킷 처리, 패킷 전달, 대역폭 제어, 시스템 호출 차단, 액세스 제어 및 추적이 가능합니다.

JIT 컴파일을 통해 바이트 코드는 즉시 기계 명령어로 변환되고 컴파일 된 코드의 성능으로 실행됩니다. Windows 용 EBPF는 MIT 라이선스에 따라 오픈 소스입니다.

오늘 우리는 eBPF가 Windows 10 및 Windows Server 2016 이상에서 작동하도록 Microsoft의 새로운 오픈 소스 프로젝트를 발표하게되어 기쁘게 생각합니다. ebpf-for-windows 프로젝트는 개발자가 기존 버전의 Windows에서 친숙한 eBPF 도구 체인 및 API (응용 프로그래밍 인터페이스)를 사용할 수 있도록하는 것을 목표로합니다. 다른 사람들의 작업을 기반으로이 프로젝트는 기존의 여러 오픈 소스 eBPF 프로젝트를 가져와 Windows에서 실행되도록 "접착제"를 추가합니다.

Windows 용 eBPF 기존 eBPF 도구와 함께 사용 가능 Linux에서 eBPF 애플리케이션에 사용되는 일반 API를 제공합니다.

특히 프로젝트를 통해 C로 작성된 코드를 바이트 코드로 컴파일 할 수 있습니다. 표준 Clang 기반 eBPF 컴파일러를 사용하는 eBPF Windows 커널 위에 이미 Linux 용으로 빌드 된 eBPF 드라이버를 실행합니다.이는 특별한 호환성 계층을 제공하고 eBPF 프로그램과 상호 작용하는 응용 프로그램과의 호환성을 위해 표준 Libbpf API를 지원합니다.

여기에는 XDP (eXpress Data Path)에 대한 Linux와 유사한 바인딩을 제공하는 중간 계층과 Windows 네트워크 스택 및 네트워크 드라이버에 대한 액세스를 요약하는 소켓 바인딩이 포함됩니다. 계획은 일반 Linux eBPF 드라이버에 대한 완전한 소스 수준 지원을 제공하는 것을 목표로합니다.

Windows 용 eBPF 구현의 주요 차이점은 원래 캐나다 및 이스라엘 대학의 VMware 직원 및 연구원이 제안한 대체 바이트 코드 검사기를 사용한다는 것입니다.

검증기는 사용자 공간에서 별도의 격리 된 프로세스에서 시작되며 BPF 프로그램을 실행하기 전에 오류를 감지하고 잠재적 인 악성 활동을 차단하는 데 사용됩니다.

유효성 검사를 위해 Windows 용 eBPF는 추상 해석 정적 분석 방법을 사용합니다., 뭐, Linux 용 eBPF 검증기와 비교하여 더 낮은 오 탐률을 보여줍니다., 루프 분석을 지원하고 우수한 확장 성을 제공합니다. 이 방법은 기존 eBPF 프로그램의 분석에서 얻은 많은 일반적인 성능 패턴을 고려합니다.

eBPF는 프로그래밍 가능성, 확장 성 및 민첩성을 제공하는 잘 알려져 있지만 혁신적인 기술입니다. eBPF는 서비스 거부 보호 및 관찰 가능성과 같은 사용 사례에 적용되었습니다.

시간이 지남에 따라 도구, 제품 및 전문 지식의 중요한 에코 시스템이 eBPF를 중심으로 구축되었습니다. eBPF에 대한 지원이 Linux 커널에서 처음 구현되었지만 eBPF를 다른 운영 체제에서 사용할 수 있도록 허용하고 커널 외에도 데몬 및 사용자 모드 서비스를 확장하는 데 관심이 증가하고 있습니다.

확인 후 바이트 코드는 커널 레벨 인터프리터로 전달됩니다. 또는 JIT 컴파일러를 통해 전달 된 다음 커널 권한으로 결과 기계 코드를 실행합니다. 커널 수준에서 eBPF 드라이버를 격리하기 위해 HVCI (HyperVisor Enhanced Code Integrity) 메커니즘이 사용됩니다.이 메커니즘은 가상화 도구를 사용하여 커널의 프로세스를 보호하고 실행 된 코드의 무결성이 디지털 서명되었는지 확인합니다.

HVCI의 한 가지 제한 사항은 해석 된 eBPF 프로그램 만 확인하는 기능과 JIT와 함께 사용할 수 없다는 것입니다 (선택 사항 : 추가 성능 또는 보호).

최종적으로 그것에 대해 더 많이 알고 싶다면 당신은 상담 할 수 있습니다 다음 링크.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자: AB Internet Networks 2008 SL
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.