Commit Graph

245 Commits (c137d0c700aa361a85c32ee9a33cf925e4c4bdf2)

Author SHA1 Message Date
Andras Toth 3e44a95155 F-secure style 2020-01-07 16:46:08 +00:00
Grzegorz Rychlik 22bf7885c1 Fix the generated shellcode name if donut options are not present in request 2020-01-07 17:12:03 +01:00
Grzegorz Rychlik bb5173a265 Remove old, unused parameter from NodeRelay 2020-01-07 17:09:52 +01:00
Grzegorz Rychlik 0111f01a58 Add calling exported API from loader 2020-01-07 17:09:08 +01:00
Grzegorz Rychlik bf4f8df204 Add exported function to ResourceGenerator 2020-01-07 17:08:16 +01:00
Grzegorz Rychlik f3ddc927bd Add debug code and config to Loader 2020-01-07 17:06:47 +01:00
Grzegorz Rychlik d67e62844f yarn build 2020-01-07 15:49:08 +01:00
Grzegorz Rychlik 3c58feb5e4 Add shellcode opion in CreateRelay modal 2020-01-07 15:37:17 +01:00
Grzegorz Rychlik b56c8853d1 Update Donut usage in WebController 2020-01-07 15:25:09 +01:00
Pawel Kurowski f80ee0f666 Add comparsion operator to ByteView, use memcmp 2020-01-07 14:38:38 +01:00
Pawel Kurowski 841216c69d Fix missing operators == != for ByteVector 2020-01-07 14:28:01 +01:00
Grzegorz Rychlik 9be6f2a23f Update Donut 2020-01-07 14:27:56 +01:00
Grzegorz Rychlik 057462df5e Merge branch 'Donut' into FixLoaderBuildDependency 2020-01-07 14:16:17 +01:00
Grzegorz Rychlik 87e7296754 Change loader output to DLL 2020-01-07 12:59:52 +01:00
Pawel Kurowski 468642a373 Replace ByteCompare with memcmp 2020-01-03 16:01:55 +01:00
Pawel Kurowski cb47662dae Fix dependecy for ByteVector 2020-01-03 15:08:11 +01:00
Pawel Kurowski 266d78fce7 Merge remote-tracking branch 'origin/master' into FixLoaderBuildDependency 2020-01-03 14:59:09 +01:00
Pawel Kurowski 6598f0723f Remove Common from Loeader project 2020-01-03 13:55:14 +01:00
Pawel Kurowski 1ff69aa825 Add gen directroy for generated files 2020-01-03 13:16:29 +01:00
Grzegorz Rychlik 446fb8e10b Change project configs 2020-01-03 12:02:54 +01:00
Pawel Kurowski 61ce149258 Update GetTargetDll to search for payload 2020-01-03 11:16:13 +01:00
Pawel Kurowski 0c42bdcc8b Add resource generator that will embed NodeRelayDll 2020-01-03 10:16:00 +01:00
Janusz Szmigielski ec15dd4023 Merge branch 'V142ToolsetFixes' into 'master'
V142 toolset fixes

See merge request C3/C3!150
2020-01-03 09:15:53 +00:00
Grzegorz Rychlik 5a36970c3c Workaround a scoped_lock CTAD problem
See: https://developercommunity.visualstudio.com/content/problem/842917/error-c3538-when-using-scoped-lock-in-derived-temp.html
2020-01-02 18:06:28 +01:00
Grzegorz Rychlik b0533d4668 Support v142 toolset in SecureString 2020-01-02 17:46:58 +01:00
Grzegorz Rychlik c6e8a764d2 WIP: Upload in-memory Loader 2020-01-02 13:44:51 +01:00
Grzegorz Rychlik 22d543a398 Merge branch 'ChannelLinter' into 'master'
Channel linter

See merge request C3/C3!146
2019-12-24 12:12:31 +00:00
Janusz Szmigielski 9f304a7b52 Merge branch 'ByteConverterUpdate' into 'master'
Use improved, header only ByteView/ByteVector

See merge request C3/C3!147
2019-12-20 12:56:57 +00:00
Pawel Kurowski 201e18a458 Add documentation to ByteConventer 2019-12-05 17:22:09 +01:00
Pawel Kurowski 580fb74642 ByteConverter review fixes 2019-12-05 14:25:27 +01:00
Grzegorz Rychlik f927eb8d22 Merge branch 'ReduceIO' into 'master'
Send the snapshot over ApiBridge only if it changed

See merge request C3/C3!144
2019-11-29 15:18:17 +00:00
Grzegorz Rychlik 69fa74bae6 Add backend support for shellcode generation using Donut 2019-11-25 16:44:14 +01:00
Grzegorz Rychlik 855b47a48a Change SnapshotProxy API 2019-11-25 13:29:20 +01:00
Grzegorz Rychlik 89aa4dde63 Move implementation to .cpp 2019-11-25 12:27:30 +01:00
Grzegorz Rychlik edf08555d9 Add missing Doxy, minor style changes 2019-11-25 12:22:41 +01:00
Pawel Kurowski 97a0a76dfa Use improved, header only ByteView/ByteVector 2019-11-21 15:45:13 +01:00
Grzegorz Rychlik 6aa3264759 Add Readme 2019-11-18 14:42:23 +01:00
Grzegorz Rychlik 0230687c6b Add doxygen comments 2019-11-18 14:42:23 +01:00
Grzegorz Rychlik 0c732309da Refactor Form and FormElement 2019-11-18 14:42:23 +01:00
Grzegorz Rychlik e35304a65d Refactor the application object 2019-11-18 14:42:22 +01:00
Grzegorz Rychlik ef445129ef Move logic implementation 2019-11-18 14:42:22 +01:00
Grzegorz Rychlik 5d237e0f9b Start cleanup 2019-11-18 14:42:22 +01:00
Grzegorz Rychlik 0a1939a6cd Rename file 2019-11-18 14:42:22 +01:00
Grzegorz Rychlik 21069e66e9 Add docs 2019-11-18 14:42:22 +01:00
Grzegorz Rychlik d56d876993 Implement MockDeviceBridge::Close 2019-11-18 14:42:22 +01:00
Grzegorz Rychlik 29bddb2fe8 Add built-in commands to linter 2019-11-18 14:42:22 +01:00
Grzegorz Rychlik 3976a1c9ab Fix Linter's dependency to Core 2019-11-18 14:42:22 +01:00
Grzegorz Rychlik d1ff940dae Add initial support for running channel commands 2019-11-18 14:42:22 +01:00
Grzegorz Rychlik 1a98b1d1cc Fix sending and receiving to conform to new implementations 2019-11-18 14:42:22 +01:00
Grzegorz Rychlik ef0793a458 Introduce MockDeviceBridge to enable logging from channel 2019-11-18 14:42:21 +01:00
Grzegorz Rychlik d95a7dd653 Validate channel creation arguments against the form definiton 2019-11-18 14:42:21 +01:00
Grzegorz Rychlik 456f84338f Add sending and receiving test 2019-11-18 14:42:21 +01:00
Grzegorz Rychlik bac6392961 Add creating complementary channel 2019-11-18 14:42:21 +01:00
Grzegorz Rychlik 7747a637a8 Add first channel creation 2019-11-18 14:42:21 +01:00
Grzegorz Rychlik eee77a3cd6 Create stub for C3 channel linter 2019-11-18 14:42:21 +01:00
Grzegorz Rychlik 33183d4f1e Fix finding device by name 2019-11-18 14:42:21 +01:00
Grzegorz Rychlik 205b4e785f Remove unsused Actions definition 2019-11-15 15:47:24 +01:00
Grzegorz Rychlik 944de76fd0 Remove Actions queue
Actions queue was write-only, effectively leaking memory
2019-11-15 15:38:18 +01:00
Grzegorz Rychlik 686bbdeb9c Send the snapshot over ApiBridge only if it changed 2019-11-14 17:50:18 +01:00
tim.carrington 5f0f992406 refactor for merge request 2019-11-08 11:21:49 +00:00
tim.carrington b29fd34656 initial commit 2019-11-04 11:38:59 +00:00
Grzegorz Rychlik 9847f5563a Move Commands enum out of Relay
Commands are also used in Devices
2019-10-31 15:10:56 +01:00
Grzegorz Rychlik a05a737f8c Decouple Device and AbstractConnector rom Relay and GateRelay 2019-10-31 14:30:20 +01:00
Grzegorz Rychlik 21f609a0ec Handle API bridge received messages asynchronously 2019-10-10 14:00:41 +02:00
Pawel Kurowski 6326f81444 InterfaceFactory::GetInterfaceData 2019-09-23 12:02:02 +02:00
Pawel Kurowski 864c4ed858 Merge remote-tracking branch 'origin/BeaconCleanup' 2019-09-23 09:59:07 +02:00
Pawel Kurowski 0955650262 Simplify Usage Of ByteVector With Custom Types 2019-09-19 18:13:34 +02:00
Pawel Kurowski 3f238b349f Specialize ByteConverter for Identifiers and RouteId 2019-09-19 14:17:49 +02:00
Pawel Kurowski ec1d1a55b5 Add ByteVector::reed proxy to ByteView::Read 2019-09-19 11:57:22 +02:00
Pawel Kurowski 5201a2391d Specialize ByteConverter template to support read/write of custom type with ByteVector/ByteView 2019-09-19 11:24:44 +02:00
Grzegorz Rychlik 03a37a71a7 Free the Beacon stager memory 2019-09-13 15:56:04 +02:00
Pawel Kurowski a44f9ba632 Merge branch 'RenameFrequencyToDelay' into 'master'
Replace UpdateFrequency with UpdateDelay

See merge request C3/C3!134
2019-09-13 13:30:55 +01:00
Pawel Kurowski f536b7a027 Merge branch 'CloseConnection' into 'master'
Close connection when peripheral is closed. Resolve access violation after...

See merge request C3/C3!132
2019-09-13 13:30:31 +01:00
Grzegorz Rychlik ca171709e5 Terminate Beacon thread
Warning: Beacause Beacon's `exit` command closes the process, this uses
TerminateThread function. This may lead to serious and unpredictable
issues.
2019-09-13 13:48:43 +02:00
Pawel Kurowski a2f9047aef Increase OpSec by clearing memory when ByteVector is not needed anymore. 2019-09-13 11:31:12 +02:00
Pawel Kurowski f84c7501b2 Fix documentation for CloseConnection 2019-09-12 17:32:25 +02:00
Pawel Kurowski f5145a096d Replace UpdateFrequency with UpdateDelay 2019-09-12 17:18:43 +02:00
Pawel Kurowski 40a2dea268 Fix UpdateDelay on gateway devices 2019-09-12 17:07:37 +02:00
Pawel Kurowski 66f24a2212 Add CloseConnection to Connectors and ConnectorBridges 2019-09-12 15:28:44 +02:00
Pawel Kurowski 89ffafa210 Merge branch 'master' into PerformanceUpgrades 2019-09-12 14:31:13 +02:00
Pawel Kurowski 01ddcef28f Merge branch 'MultiPacketReceive' into BetterByteVector 2019-09-12 13:52:39 +02:00
Pawel Kurowski ffe0d66fcd Allow retriving N bytes of data without coping using variadic ByteView::Read 2019-09-12 13:37:52 +02:00
Pawel Kurowski 17d2604c26 Add ByteView::Read for non owning containers 2019-09-11 18:13:42 +02:00
Pawel Kurowski a238e59291 Add std::hash for ByteVector and ByteView 2019-09-11 17:27:05 +02:00
Pawel Kurowski eabd5725c9 Calculate and reserve size for storing data in Byte Vector to avoid relocations 2019-09-11 16:37:24 +02:00
Pawel Kurowski 1daca2514d Avoid coping data arguments when storing them in ByteVector 2019-09-11 13:37:54 +02:00
Pawel Kurowski 864a913081 Close connection when peripheral is closed. Resolve access violation after race condition in Connectors 2019-09-11 11:35:52 +02:00
Pawel Kurowski b4cd108f03 Allow multiple packets to be received from channel 2019-09-09 17:02:14 +02:00
Janusz 11b22130a3 Fix Interface's default "create" Command parameters. 2019-09-09 14:31:14 +02:00
Pawel Kurowski 408ee1da67 Add ByteVector::Create 2019-09-09 10:17:32 +02:00
Pawel Kurowski e58e609471 Make ByteVector Concat work with all types compatible with ByteVector::Write, and add variadic usage 2019-09-09 10:17:31 +02:00
Janusz 1fc5064956 Fix Command name "UpdateDelayJitter" -> "Set UpdateDelayJitter" 2019-09-06 16:47:52 +02:00
Janusz 6f94296866 Put Channel<> and rest of CRTPs to Interfaces namespace. 2019-09-06 16:47:52 +02:00
Grzegorz Rychlik 26be33078f Change file permissions in UncShareFile channel 2019-09-06 15:21:00 +02:00
Grzegorz Rychlik 6d4eda67fa Release C3 publicly 2019-09-02 12:52:41 +02:00