NonDDoS System - Бесплатная защита от DDoS-атак

zexis
На сайте с 09.08.2005
Offline
388
#41

_Dizerd_, Вы бы дали словесное описание каких то интересных алгоритмов защиты от ддос, которые вы используете.

Тогда бы было что обсуждать.

А пока я увидел лишь простой и очевидный код на shell, который может обнаружить быстрых ботов.

Зачем вы его пытались скрыть не понятно.

Никаких интересных ноухау в вашем коде я не увидел.

Может не заметил?

Чем же ваш код лучше того же DoS Deflate?

Andreyka
На сайте с 19.02.2005
Offline
822
#42
zexis:
_Dizerd_, Вы бы дали словесное описание каких то интересных алгоритмов защиты от ддос, которые вы используете.
Тогда бы было что обсуждать.
А пока я увидел лишь простой и очевидный код на shell, который может обнаружить быстрых ботов.
Зачем вы его пытались скрыть не понятно.

Никаких интересных ноухау в вашем коде я не увидел.
Может не заметил?
Чем же ваш код лучше того же DoS Deflate?

Да ни чем.

Просто чувак нашел как запихнуть шелл в бинарь и прикРутить проверку лицухи, чтоб денежку зашибить

Не вышло

Не стоит плодить сущности без необходимости
_Dizerd_
На сайте с 21.12.2011
Offline
76
#43

zexis, Чем лучше DoS Deflate я написал выше, где то на 3 странице.

Andreyka, денежку? и как я это собирался сделать если ПО бесплатное?

iBBi
На сайте с 13.02.2007
Offline
316
#44
zexis, Чем лучше DoS Deflate я написал выше, где то на 3 странице.

Только тем что умеет читать логи nginx?

Продукты ispsystem по минимальным ценам (http://www.isplicense.ru/?from=4926)
_Dizerd_
На сайте с 21.12.2011
Offline
76
#45
iBBi:
Только тем что умеет читать логи nginx?

Да, +удобен. Но это только первая версия, в будущем будут новые версии с улучшениями..

M
На сайте с 16.09.2009
Offline
278
#46
iBBi:
Только тем что умеет читать логи nginx?

Ну, cat тоже так "умеет".

_Dizerd_:
Да

Выложить исходник вновь или сделаете это сами?

Абонементное сопровождение серверов (Debian) Отправить личное сообщение (), написать письмо ().
_Dizerd_
На сайте с 21.12.2011
Offline
76
#47

myhand, я не собираюсь вылаживать.. если вы считаете это красиво с вашей стороны так безобразно вести себя, то ваше дело... вы лиш покажите не исходник а себя, как любите гнобить когото..

myhand, если вы действительно такой умный почему бы вам не сделать лучше и не выложить? я прошу вас удалится с темы так как я не глупый человек и вижу с какой целью вы зашли в мою тему.

M
На сайте с 16.09.2009
Offline
278
#48
_Dizerd_:
myhand, я не собираюсь вылаживать..

Мая грусная русская языка :(

_Dizerd_:
если вы считаете это красиво с вашей стороны так безобразно вести себя

Вот я считаю, что безобразие в том - что вы нагло попросили esetnod убрать текст. Это любезность с его стороны.

Делать военную тайну из ерунды - не стоит. Тем более, вам бы указали на проблемы скрипта. А так - даже обсуждать толком нечего. Ну, попросите перенести в раздел "Услуги и предложения" - может какой придурок воспользуется вашим скриптом.

_Dizerd_:
почему бы вам не сделать лучше и не выложить?

Да выкладывали уже подобные однострочники, в т.ч. и мной. Поищите в форуме (вероятнее всего, их показывали zexis).

_Dizerd_:
вижу с какой целью вы зашли в мою тему.

Посмеяться. Как и все остальные, в общем-то.

_Dizerd_
На сайте с 21.12.2011
Offline
76
#49

myhand, я понимаю и согласен с вами что в данный момент секретного тама нечего нет, но в будущем я планирую его улучшать и улучшать.. но нехотелось бы чтобы исходники были в открытом доступе... ладно, давайте не будет с вами ссориться, так как честно сказать не люблю разборки и т п вещи. Я лучше пойду исправлять свои ошибки и заниматся своими делами. :)

M
На сайте с 16.09.2009
Offline
278
#50
_Dizerd_:
myhand, я понимаю и согласен с вами что в данный момент секретного тама нечего нет, но в будущем я планирую его улучшать и улучшать.. но нехотелось бы чтобы исходники были в открытом доступе... ладно, давайте не будет с вами ссориться, так как честно сказать не люблю разборки и т п вещи. Я лучше пойду исправлять свои ошибки и заниматся своими делами. :)

Замечательно. Но цензурировать других - это нехорошо.

Приятно было вспомнить кунфу:

$ gdb /usr/local/sbin/nddos

set print elements 0
set print repeats 0
break execve
run
s
s
info registers
x/10x $esi
x/s 0x0804a5ba

Так что пусть сие чудо инженерной мысли повисит:

#!/bin/bash

##############################################################################
# NonDDoS System | www.nonddos.ru #
##############################################################################

head()
{
echo
echo '----------------'
echo '[www.nonddos.ru]'
echo '----------------'
}


##### LICENSE


load_lic()
{
LICENSE="/usr/local/nonddos/nddos.lic"
if [ -f "$LICENSE" ] && [ ! "$LICENSE" == "" ]; then
echo > /dev/null 2>&1
else
echo -n $LICENSE
echo " not found."
exit 1
fi
}

load_lic

echo -n `sed -n '3p' /usr/local/nonddos/nddos.lic` > /usr/local/nonddos/lic2.txt
LOADLIC2=`base64 -d /usr/local/nonddos/lic2.txt`
LIC_CODE="8099148014801490014890314380141"

echo -n `sed -n '11p' /usr/local/nonddos/nddos.lic` > /usr/local/nonddos/lic.txt
LOADLIC=`base64 -d /usr/local/nonddos/lic.txt`
DATE=`date '+%Y%m%d'`

rm -f /usr/local/nonddos/lic.txt
rm -f /usr/local/nonddos/lic2.txt

if (( $LOADLIC2 == $LIC_CODE )) > /dev/null 2>&1 ;
then
if (( $LOADLIC > $DATE )) > /dev/null 2>&1 ;
then

#####



##### N1

load_conf()
{
CONF="/usr/local/nonddos/nddos.conf"
if [ -f "$CONF" ] && [ ! "$CONF" == "" ]; then
source $CONF
else
echo -n $CONF
echo " not found."
exit 1
fi
}

start()
{
rm -f $CRON
sleep 1
service crond restart > /dev/null 2>&1
sleep 1
echo "SHELL=/bin/sh" > $CRON
echo "PATH=/sbin:/bin:/usr/sbin:/usr/bin" >> $CRON
echo "0-59/1 * * * * root /usr/local/nonddos/nddos.sh >/dev/null 2>&1" >> $CRON
service crond restart > /dev/null 2>&1
}

stop()
{
rm -f /etc/cron.d/nddos.cron > /dev/null 2>&1
service crond restart > /dev/null 2>&1

}


load_conf

while [ $1 ]; do
case $1 in
'-start' )
start
echo
echo -n 'Starting NonDDoS: '
echo -e '[ \\E[32;32m'"\\033[1mOK\\033[0m ]"
head
exit
;;

'-stop' )
stop
echo
echo -n 'Shutting down NonDDoS: '
echo -e '[ \\E[32;32m'"\\033[1mOK\\033[0m ]"
head
exit
;;
'-restart' )
stop
echo
echo -n 'Shutting down NonDDoS: '
echo -e '[ \\E[32;32m'"\\033[1mOK\\033[0m ]"
start
echo -n 'Starting NonDDoS: '
echo -e '[ \\E[32;32m'"\\033[1mOK\\033[0m ]"
head
exit
;;
'-v' | '-version' )
echo
echo 'NonDDoS version: 1.0.0'
head
exit
;;
esac

shift
done


cd /usr/local/nonddos/ipblock
ConnLimit=$ConnLimit
conns=(`netstat --numeric-hosts --numeric-ports --numeric-users | grep 'tcp\\|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n | sed -e 's/^[ \ ]*//' | sed -e 's/\\s/\\|/'`);

for conn in ${conns[@]}
do
Count=$(echo $conn | cut -d'|' -f1)
IP=$(echo $conn| cut -d'|' -f2)
if [ $Count -ge $ConnLimit ]; then
if [ ${#IP} -ge 7 ]; then
$IPT -I INPUT -s $IP -j DROP
logger "$IP - Autoblocked for exceeding $ConnLimit connections. $Count connections were active"
echo "$IPT -D INPUT -s $IP -j DROP" > $IP
echo "logger $IP - Autounblocked after one hour" >> $IP
echo "rm $IP" >> $IP
chmod +x $IP
at -f $IP now + 1 hour
fi
fi
done


for whiteIP in `cat $WHITE_IP_LIST`;
do
$IPT -D INPUT -s $whiteIP -j DROP > /dev/null 2>&1
done

##### N2

cd /

if [ "$pln" == 'on' ]
then

# search ip bots in log
cat $logs | awk '{print $1}' | sort | uniq -c | awk '{if($1>400){print $1 " " $2}}' | awk '{print $2}' > /tmp/ips1
for ip1 in `cat /tmp/ips1`; do $IPT -I INPUT -s $ip1 -j DROP ; done

cat $logs | grep '400 0 "-" "-" "-" 0.000--' | awk '{print $1}' | sort | uniq > /tmp/ips2
for ip2 in `cat /tmp/ips2`; do $IPT -I INPUT -s $ip2 -j DROP ; done

grep "HTTP/1.1\" 503 " $logs | awk '{print $1}' | sort -n | uniq > /tmp/ips3
for ip3 in `cat /tmp/ips3`; do $IPT -I INPUT -s $ip3 -j DROP ; done

else
echo > /dev/null 2>&1
fi

exit

else
echo
echo 'Invalid license'
head
exit
fi

else
echo
echo 'Invalid license'
head
exit
fi

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий