63 lines
1.8 KiB
C#
63 lines
1.8 KiB
C#
using System;
|
|
using BeWo.Data;
|
|
using BeWo.Service.ServiceImplementations;
|
|
using BeWo.Service.ServiceUtils.Update;
|
|
using BS.SharedLauncher.DataContract;
|
|
using BS.SharedLauncher.Extensions;
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
|
|
namespace UnitTestProject472
|
|
{
|
|
[TestClass]
|
|
public class UnitTest1
|
|
{
|
|
[TestMethod]
|
|
public void DotDotShlashAttack1()
|
|
{
|
|
var tenant = "demo";
|
|
|
|
var file = new UpdateFileDC()
|
|
{
|
|
RelativePath = "../../../secure.txt",
|
|
Name = "secure.txt",
|
|
Source = BS.SharedLauncher.Enums.UpdateFileSource.VersionDefault,
|
|
AbsolutePath = "D:/Rene/ServerBeWoDataExample2/secure.txt"
|
|
};
|
|
var request = new UpdateFileRequest()
|
|
{
|
|
UpdateFile = file,
|
|
Version = "1"
|
|
};
|
|
file.LoadHash();
|
|
|
|
var res = UpdateFileResponseHelper.GetUpdateFileResponse(request, tenant);
|
|
|
|
Assert.IsNotNull(res);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void DotDotShlashDefense1()
|
|
{
|
|
var tenant = "demo";
|
|
|
|
var file = new UpdateFileDC()
|
|
{
|
|
RelativePath = "../../../secure.txt",
|
|
Name = "secure.txt",
|
|
Source = BS.SharedLauncher.Enums.UpdateFileSource.VersionDefault,
|
|
AbsolutePath = "D:/Rene/ServerBeWoDataExample2/secure.txt"
|
|
};
|
|
var request = new UpdateFileRequest()
|
|
{
|
|
UpdateFile = file,
|
|
Version = "1"
|
|
};
|
|
file.LoadHash();
|
|
|
|
var validation = UpdateRequestValidator.ValidPath(request.UpdateFile, request.Version, tenant);
|
|
|
|
Assert.IsFalse(validation);
|
|
}
|
|
}
|
|
}
|