Text message clickbait attack from g4svc.info [closed]

Recently I received a text message like this:

“xxx, we’re trying to get a hold of you about your Costco receipt UUIB-LPZ. Please claim your overcharge reimbursement here g4svc.info/6Jp1UwFdf.”

Apparently it’s a scam, but I just want to dig deeper to see what kind of attack it is. Is it just a clickbait? Or maybe it contains some JavaScript that executes instantly when I clicked on the link?

However, when I try to access it again from my laptop to analyze the source code, this link is no longer valid. It’s not like that I want to attack this server, but I really want to understand how this kind of server’s architecture works, and what kind of attack this is.

My guess is that this server keeps generating random mapping path and send to victims, whenever a URL is clicked, the server will redirect the user to the actual clickbait page, and clean up the original URL so most of the time it won’t be recorded and reported.

Navmesh awkward path generation with string pulling due to “inner” vertices

I’ve identified a problem and a possible solution related to navmesh-based pathfinding. Before diving in, I’ll preface my post with some questions to keep in mind as you read:

  • Is this a known problem that people have solved before?
  • Is there a term for the problem that could help me search for information related to it?
  • Is the solution I came up with an existing idea? If so is there a name for the algorithm or some other search term I could use to find more information?
  • Is there a better solution? If so, please point me to it.

For reference, I’m using images from http://jceipek.com/Olin-Coding-Tutorials/pathing.html#navigation-meshes and generally following the advice laid out there.

tl;dr of that blog post is

Decompose your walkable area into a navmesh, treating convex polygons as nodes and their borders as edges so that you can perform an A* search to get from point A to point B. To translate from “node ids” back to real points, use string-pulling.

Here’s a copy of the example space: initial example area

And an example generated path after performing string pulling: example area with a completed path from A to B

So far so good.

But I realized this approach generates an awkward path in a situation like this: awkward path

In this situation, a trio of nodes are all adjacent to each other, and so the A* will generally choose a path directly from the starting node to the ending node, despite an intuitive understanding that the agent can move in a straight line from A to B which travels through a different polygon.

I’ve been working on a solution to this problem and so far my best idea is to apply a transformation to the nav mesh. My description of this will be a little hazy as I’m making up terminology to describe the approach…

  • Define a shared edge as a line segment that is shared by two convex polygons in the navmesh. Maybe a.k.a. a “portal” for string-pulling purposes.
  • Define an inner vertex as a vertex in the navmesh for which all attached line segments are “shared edges”. The vertex in the center of the three polygons in the image above is an inner vertex.
  • Identify an inner vertex. Follow its attached shared edges to what I’ll call neighbor vertex. (possible improvement; If the neighbor vertex is also an inner vertex, recurse to its neighbors until all of the neighbors are non-inner.)
  • Remove all shared edges from the navmesh that were traversed in the previous step, forming a new polygon whose border is defined by the neighbor vertices in the previous step. Redefine the edges accordingly (I’ll hand-wave that)
  • Repeat until no inner vertices remain.

The result of this on the example above should result in this:

Transformed navmesh

And with the same A-B path from before, the string-pulling should now result in a straight line:

Transformed navmesh with fixed path planning

I believe that as long as the navmesh has no inner vertices, all paths generated with the approach described in the linked blog post should seem “natural” and not have any surprise corners in what seems like open space.

Per my questions at the beginning of this post, I’m looking for more information, e.g. has anybody else solved this problem before, is there a better way to do it, and is there even a name/term for this problem?

Robots.txt for a multilanguage site where root is redirected

I have a site which offers two languages, English and Spanish. When the user navigates to the home page, let’s say www.example.com the page redirects you to either /es if your browser language is Spanish or English otherwise.

At the moment the robots.txt I have is:

User-agent: * Allow: /  Sitemap: https://www.example.com/sitemap_index.xml 

because I’m defining all hreflang alternate URLs in the sitemap_languages.xml and all URLs are listed also in the sitemap.xml. My question is more towards the configuration of the robots.txt because I’m not sure if I should be allowing any user agent to crawl the / page. As that page always redirects to the home of either /en or /es I believe that should be disallowed.

Should I then do:

User-agent: * Disallow: / Allow: /es Allow: /en  Sitemap: https://www.example.com/sitemap_index.xml 

I’m not sure if that could cause a crawl issue or whether there is another way to achieve the same result.

How to improve wordpress mysql performance on large tables?

I’ve installed WordPress 5.4.1 on Ubuntu 20.04 LTS on AWS EC2 (free tier as I’m starting).

My instance has 30 GB of disk space and 1 GB of RAM.

My website has at about 9000 pages and I’ve imported 7800 so far with “HTML Import 2” plugin.

wp_posts table has 7,800 rows and 66 MB size and, since this table has grown, wordpress has become super slow. Any change I make to the database is super slow as well.

While trying to make changes, I keep getting this error:

Warning: mysqli_real_connect(): (HY000/2002): No such file or directory in /var/www/wordpress/wp-includes/wp-db.php on line 1626 No such file or directory

Error reconnecting to the database This means that we lost contact with the database server at localhost. This could mean your host’s database server is down.

What could I do in order to achieve a better speed and make it usable?

Does Blades in the Dark need any adjustments to work as a one-shot?

I love John Harper’s Blades in the Dark, and some friends and I are going to be running some one-shot games at an upcoming convention.

But, a lot of the things that make Blades so cool is how nicely it ties in long-term consequences and developments. You can start long-term projects; you have ongoing relationships with different factions; you have complications and entanglements from earlier events catching up with you now…

Even the most basic mechanic, Stress, isn’t a big deal if you start out with zero Stress, and aren’t likely to reach Trauma in the space of a single session.

I’m fine with having loose ends, or doing a “Previously on Blades!” schtick where I fill in some imaginary backstory and some existing complications.

Are there any adjustments that I should make, in order to give the full “feel” of the game, and its panache for long-term consequences, in the space of a single session?

Oracle PL-SQL “Regular expression” to replace each “(space)and(space)” with ‘,’ in a string

I have a string like this x=y and g=h and u=1 and I need to replace each (space)and(space) with ,. I’m using the powerful regular_expression for this but it does not give me the desired result.

select regexp_replace('x=y and g=h and u=1','(^[[:space:]]*)AND(^[[:space:]]*)', ',') from dual; 

I was wondering if you could help me out here. thanks in advance.

How does increasing in size affect adjacent squares and enemies?

Inspired by this question and effectively asking the opposite question. Assuming play is on a grid, what squares can a creature occupy when it goes from being medium size (1×1) to large size (2×2)? Does the square it already occupied when it was medium need to be included in its new form? What are the options for the three additional squares, can they simply be any that would make the creature 2×2? How does increasing in size interact with the “Moving Around Other Creatures” rule which states:

Whether a creature is a friend or an enemy, you can’t willingly end your move in its space.

So if there were a creature in one direction would you not be able to include its current space in your new form/size? What if you were surrounded by creatures, could you increase in size at all?

Some hopefully helpful diagrams: You are C, monsters are X, empty spaces are #.

Can

###   #C#   ###    

change into:

CC#   CC#   ###   

or

#CC   #CC   ###   

What can

XXX   #C#   ###   

change into?

What can happen from this last scenario:

XXX   XCX   XXX 

Note: I am looking for an answer that is rooted in RAW, but if no answer exists there an answer from experience with this issue would also work.

Examples of why this might matter:. If you end up occupying the same space as an enemy then a spell like fireball would no longer be able to target you.
If you push the creatures out of the way this could do things such as pushing then into a moonbeam spell.
If you are not allowed to occupy the same space as the monsters then I am confused what would happen if you were initially surrounded.

What squares can you occupy when your size increases, and do other nearby creatures impact this?