c7zero
2fbb7a4eeb
Simple EFI firmware white-listing module ( #164 )
...
tools.uefi.whitelist is a simple module for EFI firmware that allows modifications done to the firmware executables
The module can generate a list of EFI executables from (U)EFI firmware file or extracted from flash ROM, and then later check firmware image in flash ROM or file against this list of [expected/whitelisted] executables
2017-03-08 21:03:41 -08:00
CHIPSEC
21dc4bbd81
Merge pull request #155 from andrew-furtak/rwe
...
ReadWrite Everything helper added.
2017-03-08 18:24:49 -08:00
CHIPSEC
ad50429b44
Fixed logger bug
2017-03-07 16:40:11 -08:00
c7zero
2aa81afde8
SPI flash descriptor parsing improved ( #157 )
...
* Improved parsing of Flash Descriptor
Descriptor format is platform dependent so need to use XML to parse it
* cleanup
* Fixed spi info
2017-03-02 02:09:58 -08:00
johnloucaides
9a3c5a6053
add native functions to access port io & msr on linux ( #160 )
...
* add native functions to access port io and msr
* remove debug prints and try modprobe msr when not available
* fixed bug in native_read_io_port
* add attempt to load msr kernel module if not present and update error string
2017-03-02 02:06:12 -08:00
c7zero
b3bf192d51
Added SMI count util command ( #159 )
...
chipsec_util smi count command returs SMI event count on all logical
processors
2017-03-02 02:05:46 -08:00
abazhaniuk
107de65ce3
fix issues in decompression functionality ( #161 )
2017-03-02 02:05:21 -08:00
CHIPSEC
e5cd522467
Added tools.uefi.uefivar_fuzz to test UEFI Variable firmware interface
2017-02-27 14:28:28 -08:00
c7zero
a0943e297a
Fixed tools.vmm.pcie_overlap_fuzz
2017-02-25 01:33:53 -08:00
andrew-furtak
e1835bb7c9
IGD hal component added. igddma utility command added. ( #156 )
...
* IGD hal component added. igddma utility command added.
* Documentation added. Fixed file io for igd
* Deffered graphics device identification. Added check to igd cmd module for enabled device.
* Device 2 device id register renamed. Device id read with pci replaced with read_register
2017-02-24 18:04:08 -08:00
CHIPSEC
aebf790ea7
Fixed SPIBAR definition
...
Was incorrectly truncating SPI base address
2017-02-24 13:10:02 -08:00
CHIPSEC
8edca3af6a
Fixed import
2017-02-24 02:05:35 -08:00
CHIPSEC
bce48a4f4a
Added read_MMIO_BAR to mmio HAL
2017-02-24 02:05:35 -08:00
Andrew Furtak
14904f35e6
RWE helper added. SMRR support check added where required. HyperV workaround for SMRR msrs.
2017-02-22 13:07:36 -08:00
abazhaniuk
f12b035458
Ported efi_compressor from uefi-firmware-parser to chipsec_tools ( #152 )
...
* Ported efi_compressor from uefi-firmware-parser to chipsec_tools
* moved compression_source_files
2017-02-11 00:05:30 -08:00
Erik Bjorge
bb9632fa43
Added missing map_io_space method in UEFI helper code. ( #153 )
...
Added the missing map_io_space method to resolve common.bios_wp
failures when executing under the UEFI Shell.
2017-02-10 13:51:38 -08:00
Erik Bjorge
a240886c53
Added missing Atom C2000 Processor Family Device IDs ( #144 )
2017-02-05 16:51:23 -08:00
Thiébaud Weksteen
9fd0ee4729
Call parent Helper __init__ for OSX helper ( #146 )
2017-02-05 13:04:46 -08:00
c7zero
4af6dab314
Fixed tools.vmm.pcie_fuzzer ( #138 )
...
1. Fixed tools.vmm.pcie_fuzzer
2. get_device_bars calculates actual size of MMIO BARs (IO BAR size is
still hardcoded)
2017-01-20 15:32:10 -08:00
abazhaniuk
c377a72e28
Deb package ( #135 )
...
* merge
* Add Debian packaging
* cleanup
* Removed incorrect info into Copyright.
* One more: removed incorrect info in Copyright.
2017-01-06 12:57:13 -08:00
c7zero
6a85779673
Cosmetic changes ( #137 )
...
* Cosmetic changes
- Cosmetic changes in JSON results nad logging of regexp match
- Also fixed returning ModuleResult.PASSED/FAILED instead of True/False
in remap module
* Fix import
2016-12-30 17:16:39 -08:00
andrew-furtak
b540df569e
Fixed UEFI decode issues ( #136 )
2016-12-30 12:39:05 -08:00
c7zero
3979328534
UEFI firmware parsing improved ( #134 )
...
* UEFI firmware parsing improved
1. Creating EFI modules object tree when parsing UEFI firmware images
2. Added exporting parsed EFI object tree to JSON
3. EFI module seach uses callbacks
4. Added --json command-line option to export chipsec results to JSON
5. Fixed version
* updating ui_string in all sibling leaf sections
2016-12-14 12:09:50 -08:00
c7zero
baa6f49eb1
Fixed map_io_space call on Windows
2016-12-06 02:00:53 -08:00
abazhaniuk
f2dd9ad515
add DKMS support ( #132 )
...
* add DKMS support
* remove unnecessary functions
* moved get_version to defines
* raise an exception
2016-12-06 00:46:12 -08:00
c7zero
9847ed9357
Fixed ctypes
2016-12-05 17:37:26 -08:00
Thiébaud Weksteen
1edfb70c2a
Add MemoryMapping and map_io_space to Linux helper ( #120 )
2016-12-05 15:49:41 -08:00
c7zero
8155afb2f4
Improved EFI binaries search and updated blacklist config ( #131 )
...
* Changes in calculating hashes of EFI binaries
Calculating hashes of actual .efi executable files (PE32/TE sections of
EFI binaries) rather than of entire EFI binaries.
There's still an option (WRITE_ALL_HASHES) to calculate hashes of entire
EFI binaries.
* Improved UEFI search and updated blacklist config
1. Updated EFI binaries search - searching only leaf nodes (PE/TE
executable sections)
2. Added exclusion criteria and improved JSON format
3. Changed tools.uefi.blacklist module to return a warning
4. Updated ThinkPwn rules in blacklist.json
- Updated config to match by GUID AND regexp of SmmRuntime protcol GUID
within the binary to skip binaries consuming SmmRuntime protcol
- Added exclusion rules for UEFI update images with patched
SystemSmmRuntimeRt.efi. Config excludes patched binaries from Lenovo and
HP. Tested on Intel, Lenovo, HP and Gigabyte images.
2016-12-05 15:11:51 -08:00
abazhaniuk
f9738aeac0
Fix bug when calls compression tools on linux ( #130 )
2016-12-05 09:30:36 +11:00
Thiébaud Weksteen
d670746532
Add native_write_pci_reg to Linux helper ( #129 )
...
Also includes two aliases pack1 and unpack1 to easily convert values
in the helpers.
2016-12-01 22:42:06 -08:00
Thiébaud Weksteen
a91d28b2e5
Add loading and building for OSX driver ( #128 )
2016-11-25 19:44:54 -08:00
CHIPSEC
0393d0a7bd
Fixed global variables use in uefi and spi_descriptor
2016-11-22 13:44:09 -08:00
c7zero
7a5e8277df
Changed to using self.cs.cpu
2016-11-17 23:47:45 -08:00
c7zero
06fcb285ca
Fix global functions from uefi_platform
2016-11-17 23:39:26 -08:00
Thiébaud Weksteen
1a284132f8
Use HALBase for all HAL modules ( #124 )
2016-11-17 23:21:26 -08:00
O Bazhaniuk
7fd8b99d9e
remove print_cpu_set_t
2016-11-16 16:51:56 -05:00
c7zero
8ee894b880
More generic handling of chipsec tools ( #118 )
...
* More generic handling of chipsec_tools
* file extension fix
* Installing chipsec-manual.pdf
2016-11-04 14:38:06 -07:00
Thiébaud Weksteen
63991da054
Improve build_ext ( #115 )
2016-11-03 15:27:24 -07:00
timevortex
58b531aef9
Only align to 4KB if WP or RP is set ( #117 )
...
Prior to this change, the output was:
[*] BIOS Region: Base = 0x00510000, Limit = 0x00FFFFFF
SPI Protected Ranges
------------------------------------------------------------
PRx (offset) | Value | Base | Limit | WP? | RP?
------------------------------------------------------------
PR0 (74) | 8FFF0FF0 | 00FF0000 | 00FFFFFF | 1 | 0
PR1 (78) | 00000000 | 00000000 | 00000FFF | 0 | 0
PR2 (7C) | 00000000 | 00000000 | 00000FFF | 0 | 0
PR3 (80) | 00000000 | 00000000 | 00000FFF | 0 | 0
PR4 (84) | 00000000 | 00000000 | 00000FFF | 0 | 0
Now: it is:
[*] BIOS Region: Base = 0x00510000, Limit = 0x00FFFFFF
SPI Protected Ranges
------------------------------------------------------------
PRx (offset) | Value | Base | Limit | WP? | RP?
------------------------------------------------------------
PR0 (74) | 8FFF0FF0 | 00FF0000 | 00FFFFFF | 1 | 0
PR1 (78) | 00000000 | 00000000 | 00000000 | 0 | 0
PR2 (7C) | 00000000 | 00000000 | 00000000 | 0 | 0
PR3 (80) | 00000000 | 00000000 | 00000000 | 0 | 0
PR4 (84) | 00000000 | 00000000 | 00000000 | 0 | 0
2016-10-28 12:16:00 -07:00
c7zero
716e28f70d
SPI HAL cleanup to use XML config ( #114 )
...
Removed hardcoded offsets from hal.spi when reading FREGx and PRx and
replaced with XML config.
This commit also includes PR #109 (Make sure Limit of SPI Protected
Range is calculated correctly) by @timevortex except bits 11:0 of PRx
limit are also set to FFFh when PRL field is 0 (in this case PRx applies
to the first 4kB of flash).
2016-10-27 08:56:42 -07:00
abazhaniuk
9e42ff337d
add compression tools to python package ( #111 )
2016-10-25 14:01:27 -07:00
c7zero
06b1f0dd5f
More documentation update
...
Fixed passing the argv to chipsec_main.main() and chipsec_util.main()
when importing them as packages
2016-10-19 20:06:28 -07:00
CHIPSEC
cd3595239b
Skylake/Kabylake platform config update
2016-10-19 01:37:46 -07:00
abazhaniuk
94fe7f02f1
change setup.py build driver by default. change root directory of chipsec. move WARNING.txt to chipsec. remove PKG-INFO ( #107 )
2016-10-18 18:19:42 -07:00