formats

IOQuake3 Engine DDOS Workarounds

Published on March 12th, 2012 by in News

AltFire.com posted an article on using IPTables on *nix based servers to fix the DDOS issue that has been plaguing IOQuake3 based games over the past few months.  For those with root access to their servers, this is a temporary solution until official patches are issued.

— SNIP —

We have come across a situation where our ioquake3 server was being used for a Distributed Reflection Denial of Service attack.

This happens if attackers spoofs some packets (with target server ip) and asks the gameserver to send all server information (about 2k of data). The gameserver sends all server information (500k of data). Attacker repeats for thousands of gameservers.

This exploit is around several years and raises its head now and then. There is one of these attacks happening right now across thousands of quake 3 servers, targeting several webservers (install and run iftop on your Linux server. Note the amount of outgoing traffic is incredibly high on port 27960 if your server is being used in the attack).

So how to stop? While infomation is scarce, and there is no REAL way to block this kind of attack, you can handle it on your Linux server easily enough with some clever use of iptables. Here’s the rules:

# create chain

iptables -N quake3_ddos

# accept real client/player traffic
iptables -A quake3_ddos -m u32 ! –u32 “0x1c=0xffffffff” -j ACCEPT

# match “getstatus” queries and remember their address
iptables -A quake3_ddos -m u32 –u32 “0×20=0×67657473&&0×24=0×74617475&&0×25&0xff=0×73″ -m recent –name getstatus –set

# drop packet if “hits” per “seconds” is reached
#
# NOTE: if you run multiple servers on a single host, you will need to higher these limits
# as otherwise you will block regular server queries, like Spider or QConnect
# e.g. they will query all of your servers within a second to update the list
iptables -A quake3_ddos -m recent –update –name getstatus –hitcount 5 –seconds 2 -j DROP

# accept otherwise
iptables -A quake3_ddos -j ACCEPT

#
#
# finally insert the chain as the top most input filter

# single server
# iptables -I INPUT 1 -p udp –dport 27960 -j quake3_ddos

# multiple servers
iptables -I INPUT 1 -p udp –dports 27960,27961,27962 -j quake3_ddos

You ideally should add this to your init scripts to make sure it survives a reboot of the server. Now, although requests will come in from the spoofed IPs, no traffic will go back out to them and your game server won’t get blacklisted

Eventually, requests from the spoofed IPs will stop altogether (took 60 mins on our server)

 
formats

Trepidation 12-20-2011 Download Now Available

Published on December 19th, 2011 by in News

After 4 1/2 years, I’ve finally spent my free time over the last several months building this site and getting Trepidation up to date with modern OSes.  You will find everything looks a lot better and sounds a lot better than previous development builds.   This is mostly a maintenance release, primarily to bring the engine up to date with a newer version of the IOQ3 Engine, as well as clean up a lot of problems that came up in the last dev build in 2007.  All of the master servers are up and running as well as several game servers in a few different datacenters.

CHANGELOG:
- Reverted grenade launcher behaviour back to normal.
- Added in VOIP options to menus.
- Gauss rifle zoom is more responsive.
- LFO Rifle fire is now a soothing green instead of that non-descript white looking color.
- Gauss rifle unzooms when damage is taken and after you fire it.
- Fixed Missing player sounds.
- Replaced the Bot Skill Icons with something more sightly.
- Fixed CTF_AVERSION bot support by reverting it to working copy.
- Updated master server protocol, updated master server site.
- For windows, there is a separate EXE for the dedicated server now.
- 0000135: [Programming] Some Ogg Sounds are cut off. – Fixed (Shafe)
- 0000146: [Sound/Music] Missing sound in OA_RPG3DM2 – Fixed
- 0000139: [Programming] Gun Scope Still Active After Weapon Switch (Shafe) – Fixed
- 0000138: [Programming] Rifle Zoom Glitch (Shafe) – Fixed
- 0000092: [Programming] Bullet holes appear on the surface of the water. (Vincentk) – Fixed
- Due to the wary licensing issues mp3 support has been removed. This should only effect some Elite Force compatability, conversions should be fairly simple.
- Updated default configurations to enabled VOIP support by default as well as a few other needed changes.
- Inter-Quake Model support
- PNG format support for textures
- Anaglyph stereo rendering (for viewing with 3D glasses)
- In-engine VOIP support, with optional Mumble player-location support.
- Added in missing levelshots
- Fixed ctf_pyramide2 issues. Several Of them
- Removed a couple maps that didn’t fit in, they are now separate downloads.
- Fixed Skyboxes on various maps
- SDL and Ogg, Vorbis Windows Support
- updated master servers to working master servers.
- Updated game engine .
- Fixed many missing sounds

Download The Latest Dev Build Now

 
formats

Weapons Demo 2012

Published on December 13th, 2011 by in News

Took a little bit of extra time to introduce some of Trepidation’s weapons. More info on the specifics can be found in the manual.

Trepidation Weapons Demo 2011 from Brian Shaffer on Vimeo.

 
formats

November 2011 Update

Published on November 27th, 2011 by in News

It’s been awhile.

I’ve gotten a handful of emails about Trepidation and didn’t even realize a master server was still up and running and that from time to time people play the game. Which brings us to now, about 2 years since I let the planettrepidation.com domain name go. I decided I’d put up a new site with links to the manuals, source code and all of the other 3rd party maps, skins etc.

Along with this I realize that the last development build that was made public in July 2007, was riddled with problems, problems that didn’t exist in previous development builds. I decided to take the time to fix some of these issues and bring the engine up to date with the newest IOQ3 engine source.

Expect to see a new development build available in a few days.

As far as future development, I’m not sure. The original development team has all but disbanded, I’d be willing to put some time on the programming side, but through the life of the project, programming is what we had a lot of, we always needed level designers and 3d modelers. If anyone is interested, I’d be willing to move forward. I think the Trepidation gametype is still a lot of fun.

Anyhow, stay tuned for a new build.

Cheers,
Shafe