在URL中发送错误的GUID

我们有一个C#.NET Web应用程序,它使用几个GUID与一个客户端ID结合来识别我们的一些数据,这些数据被devise为可公开访问,但很难在其他有效的URL组合上发生。

该URL的格式为:

/控制器/审查?GUID1 = XXXXXXXX-XXXXXXXX-XXXX-XXXXXXXXXX&GUID2 = XXXXXXXX-XXXXXXXX-XXXX-XXXXXXXXXX&clientID的= ABCD

这三个值在我们的数据库中形成了一个复合关键字,并且一切都很好。

但是,我们在错误日志logging应用程序中看到一些GUID不是GUID的exception条目。 事实上,“错误”的URL总是如下格式:

/控制器/审查?GUID2 = XXXXXXXXXXXXXX-XXXX-XXXX-XXXXXXXXXXXXXX&clientID的= ABCDEF&GUID1 = XXXXXXXXXXXXXX-XXXX-XXXX-XXXXXXXXXXXXXX

所以,正如你所看到的那样,错误的GUID格式与正确的GUID 10-4-4-4-14的格式不同,而正确的格式是8-4-4-4-10。 另外,我们看到的clientID似乎是一个有效的clientID附加了两个额外的整数。

错误的GUID也不是hex的,URL params传入的顺序也是不正确的。

现在,这是真正的奇怪的一点。 当我们收到其中一个请求时,它总是来自一个GTT通讯拥有的networking,但它在地理上是多样的,一次是德国,另一个是美国。

另外,当我们收到错误的请求时,我们将其redirect到一个500状态的错误页面。 与初始GET请求相比,500错误页面的GET请求来自不同的IP地址,尽pipe它始终在该请求集合的同一个子网中。

在网上search了几个小时之后,我没有发现任何这样的事情。 请求看起来像他们是由一个机器人完成的,因为没有图像,CSS,JS文件被要求,他们都发生在“丛”。

任何关于这是什么的想法是好的,因为我现在完全没有想法。

我最好的猜测是某种使用VPN来掩盖其IP和地理位置的恶意机器人,但真正欺骗我的是为什么有人会试图破解一个URL,明确使用正确格式化的GUID与不符合标准的GUID类似的GUID不…