Commit Graph

136 Commits

Author SHA1 Message Date
Yanbing ed70a1a7f8
Add debug msg, replace API call incompatible with onecore , add build script (#324)
Add debug msg, replace API call incompatible with onecore , add build script
2018-06-18 22:39:31 -07:00
Manoj Ampalam 9369d870ad
upped version to 7.7.1.0 and fixed some issues with session path resolution (#320)
upped version to 7.7.1.0 and fixed some issues with session path resolution
2018-06-04 21:15:18 -07:00
bagajjal 8013f1377b implement freezero(), use localtime_s() instead of localtime() (#300)
PowerShell/Win32-OpenSSH#1121
2018-05-29 19:00:56 -07:00
Manoj Ampalam 8c9c6a0e17
fixed product version (#315) 2018-05-29 10:55:32 -07:00
Manoj Ampalam 9ff97f6106
Fixed issue with virtual token generation (#314)
On certain machines, virtual tokens were not getting generated due to lack of required privileges. Fixed it by assigning them before doing LogonUserExExW. Consolidated runtime dll loading logic. 

PowerShell/Win32-OpenSSH#1162
2018-05-28 22:03:33 -07:00
Yanbing a479737cd5
Buffer overflow in Scp (#310)
1. Fix buffer overflow in scp
2. Update setup tests to take into account the windows inbox service startup type
2018-05-20 19:06:36 -07:00
Dominic Watley 936b89ac0d Add GCM Cipher Support (#309)
Enabled GCM Cipher related macros in config header for Windows
PowerShell/Win32-OpenSSH#1075
2018-05-10 21:20:55 -07:00
Bryan Berns fe422e5c15 Enhanced Group Discovery / Normalized Names (#286)
Modified getusergroups() to use s4u tokens to discover nested groups and return them in NetBiosName\GroupName format.
Modified get_passwd() to internally normalize names to NetBiosName\SamAccountName format and changed functions that use it to translate to UPN where necessary.
Removed unnecessary support functions used by previous version of getusergroups().
Various refactoring and function consolidation / simplification.
Addressed several buffer over-read issues.

PowerShell/Win32-OpenSSH#553
2018-05-01 23:20:42 -07:00
Yanbing ec3eb7a088
Fix issue install-sshd.ps1 failed on Nano, update it to match inbox manifest, and add setup and uninstall tests (#305)
1. Fix issue install-sshd.ps1 failed on Nano
2. Update settings of services in install-sshd.ps1 to match windows inbox
3. added setup tests and update the test helper scripts to run setup tests before changing configurations on the machine
4. added uninstallation tests
2018-04-24 11:50:44 -07:00
Yanbing 41e4e89376
Add support to take key files with CRLF new line ending on windows (#301)
1. Add support to take key files with windows new line ending (PowerShell/Win32-OpenSSH#1130)
2. add test cases for CRLF
3. Update test helper script to catch the exitcode of unittest and report the failure
4. Enable uni test unittest-sshkey and unittest-sshkey
5. Disable resource check for signal tests due to some API issue to follow.
6. Remove workaround for windows new line ending in test scripts
7. Add test validation for ACL of registry entries when perform ssh-add
2018-04-12 14:24:38 -07:00
Manoj Ampalam 32a7aec453 Ported upstream changes (7.7) 2018-04-02 22:30:15 -07:00
Manoj Ampalam c1aaa5d5a3 updates to uninstall-sshd.ps1, cranked version to 7.6.1.0 (#295) 2018-03-30 19:45:11 -07:00
Yanbing f291d2438f
Added config files to enabled VSTS build, compliance tests, Code signing. (#296)
Added config files to enabled VSTS build, compliance tests, Code signing.
2018-03-30 19:44:07 -07:00
bagajjal 00b869dbd8 Use libre ssl official release binaries (#294)
- Use LibreSSL release binaries. Update paths.target
- Update paths.targets to remove onecore specific changes
- Minor changes
2018-03-29 10:23:05 -07:00
Yanbing 952650633d
Update compiler and link options (#293)
* add additionaloptions for ClCompiler and linker for APIscan compliance test
2018-03-26 16:21:56 -07:00
Bryan Berns 0dc5a971bd Allow More Child Processes (#284)
- Added wait_for_multiple_objects_enhanced() function that can logically handle wait-any on many children (system resources permitting).
- Added unit tests for wait_for_multiple_objects_enhanced().
- Incorporated use of wait_for_multiple_objects_enhanced() into main signal handler.
- Upped max child processes to 500.
2018-03-14 11:10:27 -07:00
Yanbing fb1342f7e0
Add wildcard support for scp (#283)
1. Expand wildcard for input parameters
2.  add scp tests with wildcard
3. for debug mode, need to enable the log to local log file.
4. update the path to log file
2018-03-11 23:28:52 -07:00
Manoj Ampalam 9fe39c0c73
Fixed regression caused due to ETW support changes (#282)
Regression: Service is unable to start if "ssh" programdata directory is missing.
Reason: This is due to refactored changes around w32_programdir() that moved its initialization to within win32_posix_initialize. sshd_main() is relying on this call even before the POSIX layer gets initialized.
Fix: Reverted the refactoring changes and added comments to consolidate these changes later. Also removed directory creation logic in install-sshd.ps1 that masked this issue before.
2018-03-09 14:56:47 -08:00
Manoj Ampalam 2c559a2b6c
Added support for ETW based logging (#280)
https://github.com/PowerShell/Win32-OpenSSH/issues/95
2018-03-06 15:33:19 -08:00
Yanbing 50a4badb79
Test Fixes on down level OS (#279)
* Test Fixes on downlevel machines
1. Test fix to run on win7 and win8
2. Add -onecore parameter to start-opensshpackage in build helper script
3. Add copying of libcrypto.dll and libcrypto.pdb
4. Update the build number on appveyor.yml
2018-03-01 15:11:55 -08:00
Yanbing f46d8d1b30
build script update: use vs2017 if it exists; fall back to vs2015 if 2017 does not presents (#277)
* add NoOpenSSL and OneCore parameter for packaging

* update the log option so it can print out the build console log

* update script to use vs2017 if it exists

* update path to copy libcrypto.dll
2018-02-27 14:01:45 -08:00
Manoj Ampalam 89cac52637
onboarding fileversion, productversion and softwareversion changes (#274)
Updated file version info:
FileVersionRaw : 7.6.0.0
ProductVersionRaw : 7.6.0.0
ProductName : OpenSSH for Windows
ProductVersion : OpenSSH_7.6p1 for Windows

Updated softwareversion - this would show up in protocol identification string and when doing ssh -V
OpenSSH_for_Windows_7.6
2018-02-20 23:02:04 -08:00
Manoj Ampalam 05d1975743
Added logic to spawn unauthenticated sshd workers to run in isolated … (#275)
Issue: All SSHD unauthenticated workers are currently running as "sshd". Any compromised worker can snoop into the process space of one other worker, steal authentication payload and elevate itself.
Fix: Added logic to spawn the unauthenticated workers under the context of run time unique security identities that will provide complete isolation between these worker processes.
2018-02-20 23:00:14 -08:00
Manoj Ampalam 02d07309e2
Now logging sshd.pid at %programdata%\ssh (#269)
PowerShell/Win32-OpenSSH#982
2018-01-29 21:59:48 -08:00
Yanbing bad5548188
Test update
1. Move Start-SSHD-TestDaemon and Stop-SSHD-TestDaemon to commonUtils.psm1
2. Fix the timing issue when trying to read the log while it is still locked by the process.
3, Start the service to create the config fold if it is not there.
4. Skip authorizedkey and sshdconfig tests on win7 since the task scheduler cmdlets are not available on win7.
5. rename variables
2018-01-29 13:49:01 -08:00
bagajjal b92b7c9480 fix the sshd_config and test related changes (#265)
fix the sshd_config and test related changes
2018-01-22 18:53:17 -08:00
Yanbing 8f212f6b05
Cranked version 1.0.0.0 (#262)
Cranked version 1.0.0.0
2018-01-19 15:13:09 -08:00
bagajjal c85ba2b8c3 Separate binary path from cfg path and log path (#263)
Separate binary path from cfg path and log path, test update
2018-01-19 15:12:43 -08:00
Manoj Ampalam 32ff0c2aed
Added support to autogen hostkeys at sshd service startup (#259)
* Added support to autogen hostkeys at sshd service startup
* Integrated latest changes to sshd_config
2018-01-17 08:52:10 -08:00
Manoj Ampalam fdd54b6334
Implement Unix styled privilege separation in Windows (#258)
OpenSSh privilege separation model - http://www.citi.umich.edu/u/provos/ssh/privsep.html 
Posix_spawn is implemented in POSIX adapter as an alternative to fork() that is heavily used in Privilege separation. 
Additional state info is added to sshd to accommodate distinguishing the various modes (privileged monitor, unprivileged child, authenticated child).
Required service state (like config and host keys) is transmitted over pipes from monitor to child processes.
Changes to installation scripts and tests to accomodate new architectural changes
2018-01-15 13:57:31 -08:00
Yanbing 04a3e5ee68
Cranked version 0.0.24.0 (#248)
Cranked version 0.0.24.0
2017-12-04 13:03:54 -08:00
Manoj Ampalam 6861ecaa41
Fixed service banary paths (#243)
PowerShell/Win32-OpenSSH#963
2017-11-28 21:03:10 -08:00
Yanbing 32efc3b06c
download previous pester version before the latest one got fixed. (#245) 2017-11-28 19:06:26 -08:00
Yanbing 495119e23f
Remove two properties from projects (#240) 2017-11-17 13:07:54 -08:00
Manoj Ampalam 549d532c09 Ported upstream changes 2017-11-16 14:08:23 -08:00
Yanbing a4cbd07812
Enable build for arm and arm64 (#238)
Enable build for arm and arm64
2017-11-14 17:22:02 -08:00
bagajjal 4fc40c0959 rename variable to NoLibressl 2017-11-07 16:07:16 -08:00
bagajjal 494faf24dd Enable libressl as default and to disable use the switch 2017-11-07 13:57:08 -08:00
Yanbing 65751db59c
Cranked version 0.0.23.0 (#233)
Cranked version 0.0.23.0
2017-11-02 13:01:00 -07:00
bagajjal 28b486e0b0 fix the project files to refer to libcrypto.dll instead of libcrypto-41.dll (#231)
https://github.com/PowerShell/Win32-OpenSSH/issues/933
2017-10-31 11:44:10 -07:00
Yanbing d4069f2055 Cranked version 0.0.22.0 (#225)
Cranked version 0.0.22.0
2017-10-17 14:01:15 -07:00
Manoj Ampalam 7a4a10a224 Secured permissions on logs folder and underlying logs (#221) 2017-10-12 22:46:26 -07:00
Yanbing 96235ad333 Added support (optional) for building for OneCore 2017-10-11 08:49:11 -07:00
Manoj Ampalam 72093244f9 Added test cases for certificate authentication (#216) 2017-10-03 12:21:08 -07:00
Yanbing cd35668972 Cranked Version 0.0.21.0 (#214)
Cranked Version 0.0.21.0
2017-10-02 14:37:34 -07:00
Yanbing e649e8f926 Fix for issue 888, 880 (#211)
fix for PowerShell/Win32-OpenSSH#888
Add systemid as FullAccessNeeded
fix for PowerShell/Win32-OpenSSH#880
2017-09-28 14:55:40 -07:00
Yanbing afb81c082d Some updates on shell-host.c (#210)
PowerShell/Win32-OpenSSH#893
Create pipe using default buffer size
Update buffer size when read and write file
change to use _wcsnicmp
printed out error when create pipe
added release of the memory
2017-09-27 14:32:30 -07:00
bagajjal c8c6b0b04e fix scp build issue, fix new warning msg in posixcompat (#209) 2017-09-21 21:12:01 -07:00
Yanbing 18b1e5935b multiple fixes for win7 (#206)
1. fix some exception when appverifier is enabled on win7 (https://gitthub.com/PowerShell/Win32-OpenSSH/issues/872)
2. enable sshdconfig tests on win7(https://github.com/PowerShell/Win32-OpenSSH/issues/873)
3. fix for https://github.com/PowerShell/Win32-OpenSSH/issues/874 ( ReadFile does not return on win7 when no content in console )
4. Remove logging to console in Readthread because write hangs here since write thread already closed (https://github.com/PowerShell/Win32-OpenSSH/issues/879)
5. fix VCTargetsPath
2017-09-15 21:25:42 -07:00
Manoj Ampalam 879318721c Enabled Control Flow Guard on all binaries 2017-09-14 09:09:17 -07:00