Skip to main content

Posts

Bypassing free online article limits

I was looking around for information on Brotli compression , and came across an article behind protection (login or membership required). Information behind these  paywalls  is more and more common, as companies are using these in order to maintain their revenue in an digital era. Myself, like other people, do not want to login or create an account to view this content (it is also likely found on another site) - so I poked around to see if the information was accessible without logging in. Keeping this investigation confidential, I will not be mentioning the website in question or post any screenshots what I found. The flaw has also been reported to the company to ensure they can fix their security hole. How I bypassed the paywall In articles that implement a paywall, there is typically the beginning of the online article that is visible, only for a short while. At the end of the readable article, the text fades out to white, abruptly ends, or is ended by a Sign In/Regi...

Building a networked, multiplayer .NET Core console application

I felt a desire to do something I hadn't tried yet, and that was to make a multiplayer game over the network within a .NET Core console application. Because - why not? Programming allows us to create anything we can think of . Let's have a look at making our game, Packet Battle! Packet Battle! Overview The format of this article is we will approach different aspects we need to solve in order to make Packet Battle, and at the very end I'll share the entire source you can run and play Packet Battle with your friends. Playing video games with friends You likely won't have as much fun as these people, but games are as much as you put into them . Let's begin. Defining "server" and "client" Before we go further, it is essential to understand the difference between a server and a client. In the terms of a game, each player is typically a client that joins a server that hosts multiple clients. Examples of these types of games are...

Logging into a website with Powershell

Powershell is great, and it's lately been my go-to shell while I'm working on Windows. Sorry command prompt I really don't do a lot of work in the shell, but I do like to play with low-level interfaces from time to time. The article is about Linux shells, but goes into good explanation about what a shell is if you don't know. Log into a website Today, I wanted to do something that I have never really tried before and that is logging into a website using Powershell . The concepts behind this are quite simple really, as Powershell has support to send HTTP requests  and that's usually all we need, unless the server has CSRF protections in place (which it should). We are going to attempt  to log in to my favorite website for buying socks, Absolute Socks : Is that a turkey?! In order to do that, we need to have a login. So if you don't already have an account on www.absolutesocks.com , go make one now. Viewing the login request On websites,...

GDPR "compliance" in .NET Core web application

Incorporating GDPR compliance is something that takes time, effort and thorough understanding of the law. In this post, we are going to show you how to create a stop-gap in your .NET Core web applications until you are able to invest time and resources into understanding your application's structure, usage of personal data, and restructuring it to conform to the GDPR. We will make a sample ASP.NET Core web application to demonstrate how to put a GDPR compliance stop-gap in place. Why should you care about GDPR? Before we get into the implementation, you should first understand roughly what the GDPR is and why you need to care about it. Put simply, the GDPR are a set of regulations that give consumers rights and protections to their personal information. In order to do business with consumers in the EU, or offer any service that uses consumer data of EU residents, you must be GDPR compliant. Failure to compliant will result in fines . Reading the GDPR primer Blockin...

How to approach a problem you don't know the answer to

Quite often as a developer, you are asked to do things you do not know the answer to. When approached with these problems, pay attention to following these guidelines. Don't panic You aren't the first developer who doesn't know everything, and you certainly aren't the last. Don't panic - you are paid to solve problems, including ones you don't immediately know the answer to. It's important to approach the problem calmly. It is easy to assume a self-defeating attitude and give up when someone is asking you to do something you do not know how to do. You may feel you are unqualified, but instead of becoming a victim, accept in humility you have room to grow and calmly approach the problem. Don't ask for help -right away. Don't immediately ask for help, it shows a good work ethic and helps you develop your problem solving skills. On the other end of the spectrum, barring your individual time constraints, I would not sit trying to solve a probl...

.NET Core Environment Tags (and how they can bite!)

My brief story which lead me to look to an unlikely culprit of what was causing a bug in my .NET Core application. The background This is a 3-tier application (front-end, business logic and data access layers) built in .NET Core. The application itself is actually a .NET Framework application that I am converting to .NET Core. I am converting this application not only for future support, but for performance improvements . If you haven't been on the bandwagon, .NET Framework isn't moving past version 4.8. As mentioned in the Microsoft blog , .NET Core will continue to get new features at a faster rate, and will be the preferred framework to build new apps moving forward. The application is a simple in that it has a data provider service supported by dependency injection , which uses a SQL connection to call a stored procedure to return data back into a model, which gets loaded into a view that contains a grid (ie. <table> ) on the webpage. Data is loaded base...