Skip to content

Commit f1f273c

Browse files
committed
Use cryptographically secure random number generator.
Fixes CVE-2022-29245.
1 parent acda143 commit f1f273c

File tree

2 files changed

+5
-7
lines changed

2 files changed

+5
-7
lines changed

src/Renci.SshNet/Properties/CommonAssemblyInfo.cs

+4-4
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@
55
[assembly: AssemblyDescription("SSH.NET is a Secure Shell (SSH) library for .NET, optimized for parallelism.")]
66
[assembly: AssemblyCompany("Renci")]
77
[assembly: AssemblyProduct("SSH.NET")]
8-
[assembly: AssemblyCopyright("Copyright © Renci 2010-2021")]
8+
[assembly: AssemblyCopyright("Copyright © Renci 2010-2022")]
99
[assembly: AssemblyTrademark("")]
1010
[assembly: AssemblyCulture("")]
1111

12-
[assembly: AssemblyVersion("2020.0.1")]
13-
[assembly: AssemblyFileVersion("2020.0.1")]
14-
[assembly: AssemblyInformationalVersion("2020.0.1")]
12+
[assembly: AssemblyVersion("2020.0.2")]
13+
[assembly: AssemblyFileVersion("2020.0.2")]
14+
[assembly: AssemblyInformationalVersion("2020.0.2")]
1515
[assembly: CLSCompliant(false)]
1616

1717
// Setting ComVisible to false makes the types in this assembly not visible

src/Renci.SshNet/Security/KeyExchangeECCurve25519.cs

+1-3
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,7 @@ public override void Start(Session session, KeyExchangeInitMessage message)
4646
var basepoint = new byte[MontgomeryCurve25519.PublicKeySizeInBytes];
4747
basepoint[0] = 9;
4848

49-
var rnd = new Random();
50-
_privateKey = new byte[MontgomeryCurve25519.PrivateKeySizeInBytes];
51-
rnd.NextBytes(_privateKey);
49+
_privateKey = CryptoAbstraction.GenerateRandom(MontgomeryCurve25519.PrivateKeySizeInBytes);
5250

5351
_clientExchangeValue = new byte[MontgomeryCurve25519.PublicKeySizeInBytes];
5452
MontgomeryOperations.scalarmult(_clientExchangeValue, 0, _privateKey, 0, basepoint, 0);

0 commit comments

Comments
 (0)