|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-8-3-RELEASE netbsd-9-4-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base netbsd-9-3-RELEASE cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 netbsd-9-2-RELEASE cjep_staticlib_x-base netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-8-2-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 netbsd-7-2-RELEASE pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 netbsd-7-1-2-RELEASE pgoyette-compat-base netbsd-7-1-1-RELEASE matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE netbsd-7-base yamt-pagecache-base9 yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 tls-maxphys-base matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231 matt-premerge-20091211 jym-xensuspend-nbase jym-xensuspend-base
|
| #
1.26 |
|
16-Mar-2009 |
lukem |
fix sign-compare issues
|
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 mjf-devfs2-base
|
| #
1.25 |
|
31-Aug-2008 |
dholland |
branches: 1.25.4; Remove trailing whitespace. Noted in PR 39440 by Stathis Kamperis.
|
| #
1.24 |
|
24-Jul-2008 |
dholland |
Adjust this to not need -Wno-pointer-sign.
|
|
Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-baseX yamt-pf42-base2 wrstuden-revivesa-base yamt-pf42-base keiichi-mipv6-base matt-armv6-nbase cube-autoconf-base mjf-devfs-base matt-armv6-base hpcarm-cleanup-base
|
| #
1.23 |
|
01-Oct-2007 |
xtraeme |
branches: 1.23.8; 1.23.12; Remove intval from %union, it's unused... ok christos@.
|
| #
1.22 |
|
17-Aug-2007 |
pavel |
branches: 1.22.2; Attempt at fixing build failures after proplib was converted to bool: FALSE -> false, TRUE -> true, boolean_t -> bool, int -> bool when appropriate, include stdbool.h . proplib.h no longer provides boolean_t, so it is necessary to change to bool.
From Tom Spindler (dogcow@).
|
|
Revision tags: matt-mips64-base
|
| #
1.21 |
|
15-May-2007 |
elad |
Some Veriexec stuff that's been rotting in my tree for months.
Bug fixes: - Fix crash reported by Scott Ellis on current-users@.
- Fix race conditions in enforcing the Veriexec rename and remove policies. These are NOT security issues.
- Fix memory leak in rename handling when overwriting a monitored file.
- Fix table deletion logic.
- Don't prevent query requests if not in learning mode.
KPI updates: - fileassoc_table_run() now takes a cookie to pass to the callback.
- veriexec_table_add() was removed, it is now done internally. As a result, there's no longer a need for VERIEXEC_TABLESIZE.
- veriexec_report() was removed, it is now internal.
- Perform sanity checks on the entry type, and enforce default type in veriexec_file_add() rather than in veriexecctl.
- Add veriexec_flush(), used to delete all Veriexec tables, and veriexec_dump(), used to fill an array with all Veriexec entries.
New features: - Add a '-k' flag to veriexecctl, to keep the filenames in the kernel database. This allows Veriexec to produce slightly more accurate logs under certain circumstances. In the future, this can be either replaced by vnode->pathname translation, or combined with it.
- Add a VERIEXEC_DUMP ioctl, to dump the entire Veriexec database. This can be used to recover a database if the file was lost. Example usage:
# veriexecctl dump > /etc/signatures
Note that only entries with the filename kept (that is, were loaded with the '-k' flag) will be dumped.
Idea from Brett Lymn.
- Add a VERIEXEC_FLUSH ioctl, to delete all Veriexec entries. Sample usage:
# veriexecctl flush
- Add a 'veriexec_flags' rc(8) variable, and make its default have the '-k' flag. On systems using the default signatures file (generaetd from running 'veriexecgen' with no arguments), this will use additional 32kb of kernel memory on average.
- Add a '-e' flag to veriexecctl, to evaluate the fingerprint during load. This is done automatically for files marked as 'untrusted'.
Misc. stuff: - The code for veriexecctl was massively simplified as a result of eliminating the need for VERIEXEC_TABLESIZE, and now uses a single pass of the signatures file, making the loading somewhat faster.
- Lots of minor fixes found using the (still under development) Veriexec regression testsuite.
- Some of the messages Veriexec prints were improved.
- Various documentation fixes.
All relevant man-pages were updated to reflect the above changes.
Binary compatibility with existing veriexecctl binaries is maintained.
|
| #
1.20 |
|
08-Dec-2006 |
elad |
Don't reset entry-type for every flag_spec.
|
|
Revision tags: netbsd-4-base
|
| #
1.19 |
|
28-Nov-2006 |
elad |
branches: 1.19.2; Make Veriexec use proplib(3) for kernel-userland data passing.
Obviously, this breaks the already unstable Veriexec ABI, but that's it. Some cool additions are planned to be introduced, and this just makes it so that NetBSD 4.0 users will be able to easily use them as well.
This also removes the fingerprint type name limit, so relevant code was adjusted.
Thoroughly tested (even uncovered a bug in proplib! thanks for fixing that cube@!). Documentation updated.
|
| #
1.18 |
|
21-Nov-2006 |
elad |
Update my email address.
|
| #
1.17 |
|
30-Sep-2006 |
elad |
If Veriexec enforces access type, don't allow mmap() to use PROT_EXEC on files that don't have the "indirect" flag. Also change the "library" alias in veriexecctl(8) to mean "file, indirect".
okay blymn@
|
| #
1.16 |
|
05-Sep-2006 |
elad |
Fix two horrible bugs found during a routine audit session with Brett Lymn.
First one was incorrectly loading entries -- we were treating each file as a mount, which resulted in huge mess. I have no excuse for how I didn't catch this earlier.
Second, use the table name we create for the Veriexec sysctl node and not the fixed "table0".
Both are fileassoc(9) integration fallout.
|
|
Revision tags: abandoned-netbsd-4-base
|
| #
1.15 |
|
14-Jul-2006 |
elad |
branches: 1.15.2; misc cleanup: remove #if 0 code, unused var, and make pretty.
|
| #
1.14 |
|
14-Jul-2006 |
elad |
okay, since there was no way to divide this to two commits, here it goes..
introduce fileassoc(9), a kernel interface for associating meta-data with files using in-kernel memory. this is very similar to what we had in veriexec till now, only abstracted so it can be used more easily by more consumers.
this also prompted the redesign of the interface, making it work on vnodes and mounts and not directly on devices and inodes. internally, we still use file-id but that's gonna change soon... the interface will remain consistent.
as a result, veriexec went under some heavy changes to conform to the new interface. since we no longer use device numbers to identify file-systems, the veriexec sysctl stuff changed too: kern.veriexec.count.dev_N is now kern.veriexec.tableN.* where 'N' is NOT the device number but rather a way to distinguish several mounts.
also worth noting is the plugging of unmount/delete operations wrt/fileassoc and veriexec.
tons of input from yamt@, wrstuden@, martin@, and christos@.
|
| #
1.13 |
|
05-Oct-2005 |
elad |
Introduce per-page fingerprints in Veriexec.
This closes a hole pointed out by Thor Lancelot Simon on tech-kern ~3 years ago.
The problem was with running binaries from remote storage, where our kernel (and Veriexec) has no control over any changes to files.
An attacker could, after the fingerprint has been verified and program loaded to memory, inject malicious code into the backing store on the remote storage, followed by a forced flush, causing a page-in of the malicious data from backing store, bypassing integrity checks.
Initial implementation by Brett Lymn.
|
| #
1.12 |
|
06-Aug-2005 |
blymn |
Add and document some convenience aliases for commonly required option combinations.
|
| #
1.11 |
|
02-Aug-2005 |
elad |
Support multiple entry types. Direct, indirect, and file can now be combined in the signatures file using commas.
|
| #
1.10 |
|
13-Jun-2005 |
elad |
Some refactoring and bugfixes:
- Report line numbers correctly. - Don't perform a 2nd pass when there are were errors during 1st. - Support multiple, comma-separated flags. This is mostly a reworking of some parser internals preparing for planned features.
|
| #
1.9 |
|
27-May-2005 |
elad |
Don't access a NULL pointer.
|
| #
1.8 |
|
20-May-2005 |
elad |
Remove leftovers from Vexec.
|
| #
1.7 |
|
21-Apr-2005 |
christos |
Minor cleanups, KNF, error handling consistency.
|
| #
1.6 |
|
21-Apr-2005 |
he |
Make this compile again after the latest overhaul. Use -I${.CURDIR} instead of -I. to support placement of objects elsewhere. Make sure arguments to ctype functions are unsigned char by changing the type of one function argument. Fix "local declaration shadows global" warnings by renaming variables. Fix printing of size_t variable to use %zu format instead of %u.
|
| #
1.5 |
|
20-Apr-2005 |
blymn |
Rototill of the verified exec functionality. * We now use hash tables instead of a list to store the in kernel fingerprints. * Fingerprint methods handling has been made more flexible, it is now even simpler to add new methods. * the loader no longer passes in magic numbers representing the fingerprint method so veriexecctl is not longer kernel specific. * fingerprint methods can be tailored out using options in the kernel config file. * more fingerprint methods added - rmd160, sha256/384/512 * veriexecctl can now report the fingerprint methods supported by the running kernel. * regularised the naming of some portions of veriexec.
|
|
Revision tags: netbsd-3-base
|
| #
1.4 |
|
19-Jan-2005 |
xtraeme |
branches: 1.4.2; Kill __P(); WARNS=2
|
|
Revision tags: netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
|
| #
1.3 |
|
06-Mar-2004 |
blymn |
Removed arbitrary 255 character limit on file field Verify that the path in the file field is not > MAXPATHLEN, if it is too long then skip that entry in the signature file.
|
|
Revision tags: fvdl_fs64_base
|
| #
1.2 |
|
21-Dec-2002 |
wiz |
Remove traces of old names (verifiedexec_load and /dev/verifiedexec).
|
| #
1.1 |
|
23-Nov-2002 |
blymn |
Renamed verified exec fingerprint loader.
|