The Drawbacks of Using std::vector as an Output Buffer in I/O Operations

By | March 20, 2023

In this short article, we will examine some non-obvious performance issues that can arise when using std::vector<char> as an output buffer for input-output operations. Specifically, we will discuss the consequences of using the resize and reserve methods and how their improper use can lead to undesirable outcomes. As we know, std::vector is a dynamic array that provides convenient… Read More »

How to Bypass Egypt’s WireGuard Ban

By | February 9, 2022

In 2021, the popularity of the WireGuard VPN protocol in Egypt was significant enough that it was added to the block list, causing frustration for customers of commercial VPN providers such as Cloudflare Warp+ and Mullvad Wireguard, as well as some corporate VPN users. Initial research suggests that the block list is specifically targeting the Handshake Initiate packets… Read More »

Dante in Oracle Cloud

By | January 18, 2022

Here’s a step-by-step guide on how to create a personal, cost-free SOCKS5 anonymous proxy with support for UDP ASSOCIATE (as specified in RFC1928) in Oracle Cloud. I documented these steps for myself while setting up the SOCKS5 proxy for the purpose of experimenting with forwarding WireGuard handshake packets over SOCKS5. However, I later decided to share this information… Read More »

BoringTun based WireGuard client for Windows

By | October 31, 2021

In early 2019, Cloudflare introduced BoringTun, an implementation of the WireGuard protocol written in Rust. The project code is distributed under the BSD-3-Clause license and consists of two main parts: Later in 2019 Cloudflare released the free VPN “for people who don’t know what V.P.N. stands for” called WARP. Nowadays WARP/BoringTun is successfully deployed on millions of macOS, Windows, iOS and Android consumer devices… Read More »

Securing Remote Desktop with SSH

By | March 29, 2020

Covid-19 led to a globe-wide work-from-home experiment, and it is logical to expect the growing number of users accessing their computers remotely using Remote Desktop. Having an RDP port open to the Internet is generally considered insecure, and most of the security experts advise using VPN or/and two-factor authentication to improve the security. Here we will review an… Read More »

“Failed to install WinpkFilter NDIS LWF driver with error 0x800700b7” or critical value of driver customization

By | January 22, 2018

One of our customers has recently reported that WinpkFilter installation has failed with error code 0x800700b7. This was the first report mentioning such error code, and we have spent some time to research the issue at a customer side. Such behavior seems to be worth mentioning in a dedicated post. 0x800700b7 error code can be decoded as ERROR_ALREADY_EXISTS.… Read More »

Microsoft Edge and ProtectedHomepages

By | May 11, 2016

Recently, I have had a small but curious research project with the requirement to decrypt ProtectedHomepages binary value stored under [HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Storage\microsoft.microsoftedge_8wekyb3d8bbwe\MicrosoftEdge\Protected – It is a violation of Windows Policy to modify. See aka.ms/browserpolicy]. While googling around the problem, I have seen a related question on Stack Overflow, so I decided that it may have sense to share… Read More »