Skip to content
/ winrego Public

Low level library for handling registry files

Notifications You must be signed in to change notification settings

turekt/winrego

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WinReGo

A low level library for offline handling of Windows Registry files.

Motivation

There are a lot of great Windows Registry parsers out there, e.g:

All of these parsers are doing a great job in providing read access to Windows Registry files with a few differences in implementation and use case coverage.

WinReGo tries to be different by:

  • providing ability to load fields to memory in addition to capability of reading data via offsets directly from file
  • provide writing ability for all memory block types
  • provide with a simple and low level API to build more complex components or libraries
  • provide the functionality in pure Go

The library is currently in early stages so breaking changes are possible and additions are expected.

Resources

This library is being built from documentation and resources provided by others:

Testing data and files are available in the referenced resource repositories:

Setting up test data used in tests:

declare -a urls=(
	"https://raw.githubusercontent.com/msuhanov/yarp/master/hives_for_manual_tests/FuseHive"
	"https://raw.githubusercontent.com/msuhanov/yarp/master/hives_for_manual_tests/FuseHive2"
	"https://raw.githubusercontent.com/msuhanov/yarp/master/hives_for_manual_tests/FuseHive3"
	"https://raw.githubusercontent.com/msuhanov/yarp/master/hives_for_manual_tests/FuseHive4"
	"https://raw.githubusercontent.com/libyal/winreg-kb/main/test_data/SAM"
	"https://raw.githubusercontent.com/williballenthin/python-registry/master/testing/reg_samples/new_log_1/SYSTEM"
)
dir="_testdata"
mkdir -p "${dir}"
for url in "${urls[@]}"; do
	wget "${url}" -P "${dir}"
done

About

Low level library for handling registry files

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages