Setup SourceQueryCacheMono
Install
mono
Build SQC
PHP Code:
cd SourceQueryCacheMono
xbuild /p:Configuration=Release QueryCache.sln
Now we have QueryCache.exe in QueryCache/bin/Release subfolder
Check SQC
PHP Code:
cd QueryCache/bin/Release
# start listening on 27915 and proxy requests to 216.52.148.47:27015
mono QueryCache.exe 27915 216.52.148.47 27015
Now we can test SQC with some requester.
test_a2sinfo.py
PHP Code:
# test_a2sinfo.py can be found in previous posts
# Replace target to "remote_addr=('127.0.0.1', 27915)" in test_a2sinfo.py and run on same host
$ python3 test_a2sinfo.py
Got response, len=293
b'\xff\xff\xff\xffI\x11[GFLClan.com]Zombie Escape 24/7 | Rank | Recruiting | NoBlock |\x00ze_surf_facility_p4\x00csgo\x00Counter-Strike: Global Offensive\x00\xda\x02@@\x00dw\x00\x011.35.7.8\x00\xb1\x87i1\xf1\x05\x00\x00\x000\x01*GFL,"Games,!,"",*,*bhop,*bhopping,*gflclan,*competitive,*escape,*fun,*empty,*secure,*unique,*updated,*zombie,*zombie escape,_,\x00\xda\x02\x00\x00\x00\x00\x00\x00'
Final steps
1. Setup SQC to your servers (setup should be done on same host)
2. Enable Kernel module
If you use
different ports, you should manually change theirs in poc.c before compilation.
In attachment you can found compiled QueryCache.exe. All credits and source code can be found here:
https://github.com/blastehh/SourceQueryCacheMono