❗️Toto je původní verze internetového fóra ISPforum.cz do února 2020 bez možnosti registrace nových uživatelů. Aktivní verzi fóra naleznete na adrese https://telekomunikace.cz
	MikroTik - BEZPECNOSTNI UPOZORNENI !!! DULEZITE - zablokovane MikroTiky
Re: MikroTik - BEZPECNOSTNI UPOZORNENI !!! DULEZITE - zablokovane MikroTiky
U nás vždy na tuto IP, jen tak "z legrace" tu doménu přesměrováváme a sledujeme, z jakých IP to jde - detekujeme tak nakažená zařízení. Na některých to mění DNS, takže máme i udělanou routu a malý virtuální web, který z pohledu těch zařízení simuluje ten čínský server. Každý požadavek zapíše (opět kvůli nalezení nakažených zařízení) a na zařízení vrátí tu hlášku "zatím klid, ozvi se zas". Jinak vodítkem je i název zařízení (/system identity), to zatím všude bylo nastaveno na "test".
			
									
						
		0 x 
			Si vis pacem, para bellum.
MikroTik, UBNT, Cisco, TP-Link... rozhoduje vhodnost toho či onoho pro konkrétní použití, ne jaké logo nalepili v Číně na krabici. Na tomto fóru vystupuji jen a pouze sám za sebe.
						MikroTik, UBNT, Cisco, TP-Link... rozhoduje vhodnost toho či onoho pro konkrétní použití, ne jaké logo nalepili v Číně na krabici. Na tomto fóru vystupuji jen a pouze sám za sebe.
Zdravim, dostal sa nam do ruk Mikrotik RB951Ui-2HnD ktory mal starsi firmware a bol mu planovany upgrade na 6.42.3. Po upgrade sa nerozbehol (restart nepomohol), tak sme ho vymenili za novy kus.
Teraz som ho zapol, nabehol v defaulte a vo files mame taktiez jb_cislo_cislo.backup, ale bol tam aj nejaky subor "467", ktoreho obsah je prinajmensom zaujimavy a vyzera, ze nejaka dobra dusa spravila tool na kontrolu, ak nie aj fix.
Vie to nejaky linuxak pozriet ? Nejde mi ju sem prilozit tak posielam obsah.
			
									
						Teraz som ho zapol, nabehol v defaulte a vo files mame taktiez jb_cislo_cislo.backup, ale bol tam aj nejaky subor "467", ktoreho obsah je prinajmensom zaujimavy a vyzera, ze nejaka dobra dusa spravila tool na kontrolu, ak nie aj fix.
Vie to nejaky linuxak pozriet ? Nejde mi ju sem prilozit tak posielam obsah.
Kód: Vybrat vše
#!/bin/bash
echo "<< Owari Anti-Virus ( `cat /flash/rw/logs/VERSION` ) >>"
# Sets PPID to the Parent Process ID.
find_ppid () {
PD=`cat /proc/$1/status 2>/dev/null`;
PDL=`expr length "$PD"`;
CNT=1;
while [ $CNT -le $PDL ];do
  CS=`expr substr "$PD" $CNT 5`;
  if [ "$CS" = "PPid:" ];then
    C2=$((CNT+6));
    TS=`expr substr "$PD" $C2 5`;
    STOP=0;
    PPID="";
    while [ "$STOP" -lt 1 ];do
      NS=`expr substr "$PD" $C2 1`;
      if [ "$NS" = "" ];then
        STOP=1;
      fi;
      if [ ! "$NS" = "" ];then
        PPID="$PPID$NS";
      fi;
      C2=$((C2+1));
    done;
    CNT=99999;
  fi;
  CNT=$((CNT+1));
done;
}
##### 'FatKid' prevention #####
CF="/tmp/a.txt";
if [ ! -e $CF ];then
  echo -n "[ Adding 'FatKid' prevention file: $CF ... ";
  echo 1 > /tmp/a.txt
  echo "Done ]"
fi
CF="/tmp/stop.txt";
if [ ! -e $CF ];then
  echo -n "[ Adding 'FatKid' prevention file: $CF ... ";
  echo 1 > /tmp/stop.txt
  echo "Done ]"
fi
##### 'FatKid' winbox.idx fix #####
CF="/ram/winbox.idx";
if [ ! -e $CF ];then
  echo -n "[ FatKid removed $CF. Fixing ... ";
  for i in $(path --postfix .info /home/web/winbox); do cat $i >>/ram/winbox.idx; done
  echo "Done ]"
fi
##### PROCESS DETECTION #####
echo "Starting process detection. Stage 1."
for FU in `find /proc/*/comm 2>/dev/null`;do 
  CL=`cat $FU 2>/dev/null`;
  SP=`expr index "$FU" m`;
  SP=$((SP-6-4));
  PPID=`expr substr "$FU" 7 $SP`;
  if [ "$CL" = '.s0x' ];then
    echo "[!! Found suspicious PID: $PPID  [Comm: $CL] ... Killed";
    kill -9 $PPID;
  fi;
  if [ "$CL" = '.sox' ];then
    echo "[!! Found suspicious PID: $PPID  [Comm: $CL] ... Killed";
    kill -9 $PPID;
  fi;
  if [ "$CL" = 'dropbear' ];then
    echo "[!! Found suspicious PID: $PPID  [Comm: $CL] ... Killed";
    kill -9 $PPID;
  fi;
  if [ "$CL" = '.nttpd' ];then
    echo "[!! Found suspicious PID: $PPID  [Comm: $CL] ... Killed";
    kill -9 $PPID;
  fi;
  if [ "$CL" = '.dnstest' ];then
    echo "[!! Found suspicious PID: $PPID  [Comm: $CL] ... Killed";
    kill -9 $PPID;
  fi;
  if [ "$CL" = '.i' ];then
    echo "[!! Found suspicious PID: $PPID  [Comm: $CL] ... Killed";
    kill -9 $PPID;
  fi;
  ##### 'FatKid' process detection #####
  if [ ! "$PPID" = "self" ];then
    CMDL=`cat /proc/$PPID/cmdline 2>/dev/null`;
    if [ -n "$CMDL" ];then
      CV=`expr "$CMDL" : ".*$CL"`;
      if [ $CV -eq 0 ];then
        if [ $PPID -gt 256 ];then
          echo "[!! Found suspicious PID: $PPID  [Cmdline: $CMDL] [Comm: $CL] ... Killed";
          kill -9 $PPID;
        fi;
      fi;
    fi;
  fi;
done;
echo "Starting process detection. Stage 2."
for FU in `find /proc/*/cmdline 2>/dev/null`;do
  if [ ! "$FU"=="self" ];then
  CL=`cat $FU 2>/dev/null`;
  if [ -n "$CL" ];then
    CN=`echo -n -e "\x62\x61\x73\x68\x00\x2f\x74\x6d\x70\x2f\x61\x2e\x73\x68\x00"`
    if [ "$CL"=="$CN" ];then
      SP=`expr index "$FU" e`;
      SP=$((SP-8-6));
      EVILPID=`expr substr "$FU" 7 $SP`;
      if [ ! "$EVILPID" = "self" ];then
        if [ $PPID -gt 256 ];then
          echo "[!! Found 'FatKid' botnet process running !!] Killing PID: $EVILPID  PN: '$CL'";
          kill -9 $EVILPID;
        fi;
      fi;
    fi;
    CN=`echo -n -e "\x2f\x62\x69\x6e\x2f\x62\x61\x73\x68\x00\x2f\x74\x6d\x70\x2f\x61\x2e\x73\x68\x00"`
    if [ "$CL"=="$CN" ];then
      SP=`expr index "$FU" e`;
      SP=$((SP-8-6));
      EVILPID=`expr substr "$FU" 7 $SP`;
      if [ ! "$EVILPID" = "self" ];then
        if [ $PPID -gt 256 ];then
          echo "[!! Found 'FatKid' botnet process running !!] Killing PID: $EVILPID  PN: '$CL'";
          kill -9 $EVILPID;
        fi;
      fi;
    fi;
  fi;
  fi;
done;
echo "Starting process detection. Stage 3."
##### Hajime process detection #####
for FU in `find /proc/*/cmdline 2>/dev/null`;do 
  CL=`cat $FU 2>/dev/null`;
  SP=`expr index "$FU" e`;
  SP=$((SP-8-6));
  PP=`expr substr "$FU" 7 $SP`;
  if [ -n "$CL" ];then
#    echo "Checking PID: $PP   CMDLINE: $CL"
    if [ "$CL" = "telnetd   " ];then
      SP=`expr index "$FU" e`;
      SP=$((SP-8-6));
      if [ ! "$PP" = "self" ];then
        if [ $PP -gt 100 ];then
          PPID="";
          find_ppid $PP;
          echo "[!! Found 'Hajime' botnet process running !!] Killing PID: $PP  PPID: $PPID PN: '$CL'";
          kill -9 $PP;
        fi;
      fi;
    fi;
    if [ "$CL" = "./.telnetd" ];then
      SP=`expr index "$FU" e`;
      SP=$((SP-8-6));
      if [ ! "$PP" = "self" ];then
        if [ $PP -gt 100 ];then
          find_ppid $PP
          echo "[!! Found 'Hajime' botnet process running !!] Killing PID: $PP  PPID: $PPID PN: '$CL'";
          kill -9 $PP;
        fi;
      fi;
    fi;
  fi;
done;
echo "Starting process detection. Stage 4."
for FU in `find /proc/*/comm 2>/dev/null`;do 
  CL=`cat $FU 2>/dev/null`;
  SP=`expr index "$FU" m`;
  SP=$((SP-6-4));
  PP=`expr substr "$FU" 7 $SP`;
  if [ "$CL" = "telnetd" ];then
    find_ppid $PP
    if [ -n "$PPID" ];then
      PN=`cat /proc/$PPID/comm`;
      if [ ! "$PN" = "sermgr" ];then
        if [ ! "$PN" = "self" ];then
          echo "[!! Found fake 'telnetd' running. PID: $PP  PPID: $PPID  [Comm: $CL] ... Killed";
          kill -9 $PP;
        fi;
      fi;
    fi;
  fi;
done;
echo "Starting process detection. Stage 5."
for FU in `find /proc/*/comm 2>/dev/null`;do 
  CL=`cat $FU 2>/dev/null`;
  SP=`expr index "$FU" m`;
  SP=$((SP-6-4));
  PP=`expr substr "$FU" 7 $SP`;
  CMDL=`cat /proc/$PPID/comm 2>/dev/null`;
  COMM=`cat /proc/$PPID/cmdline 2>/dev/null`;
  CV=`expr "$CMDL" : ".*$COMM"`;
  CZ=`expr "$COMM" : ".*$CMDL"`;
  FS=`expr index "$COMM" "/"`;
  if [ -n "$COMM" ];then
    if [ "$FS" -eq 0 ];then
      if [ ! "$CMDL" = "bash" ];then
        if [ ! "$CMDL" = "catlog" ];then
          if [ ! "$CMDL" = "usleep" ];then
            find_ppid $PP
            PN=`cat /proc/$PPID/comm`;
            if [ ! "$PN" = "sermgr" ];then
              echo "[!! Found suspicious PID: $PP  PPID: $PPID  PNAME: $PN  [Cmdline: $CMDL  Comm: $COMM] ... Killed";
              kill -9 $PP
            fi;
          fi;
        fi;
      fi;
    fi;
  fi;
done;
echo "Starting file detection."
##### File detection #####
FILES="""/flash/etc/rc.d/run.d/S2up
/flash/etc/rc.d/run.d/S99tr096
/flash/etc/rc.d/run.d/S99telnetd
/flash/etc/rc.d/run.d/S99own
/flash/etc/rc.d/run.d/busybox
/flash/etc/rc.d/run.d/dropbear
/flash/etc/rc.d/run.d/dss
/flash/etc/rc.d/run.d/libpcap.so.1.3
/flash/etc/rc.d/run.d/rsa
/flash/etc/rc.d/run.d/tcpdump
/flash/bin/.telnetd
/flash/bin/fifo
/flash/bin/.p/.d
/flash/bin/.p/.i.mipseb
/flash/bin/.p/.i.mipsel
/flash/bin/.p/.i.arm5
/flash/bin/.p/.i.arm6
/flash/bin/.p/.i.arm7
/flash/bin/.p/atk.mipseb
/flash/bin/.p/atk.mipsel
/flash/bin/.p/atk.arm5
/flash/bin/.p/atk.arm6
/flash/bin/.p/atk.arm7
/flash/bin/echo
/flash/bin/.test
/flash/bin/.dnstest
/flash/rw/pckg/checkupdate
/flash/rw/pckg/fileinfo
/flash/rw/pckg/.p/.i.mipseb
/flash/rw/pckg/.p/atk.mipseb
/flash/rw/pckg/fifo
/tmp/tmp.l
/tmp/.stl
/tmp/.fph
/tmp/.ipt
/tmp/.dns
/tmp/.s0x
/tmp/.sox
/tmp/.nttpd
/tmp/.s0x.ps
/tmp/.nttpd.ps
/tmp/.sox.pid
/tmp/.nttpd.pid
/tmp/update.sh
/tmp/a.sh
/tmp/o.sh
/tmp/zxcvbnm.txt
/tmp/zxcvbnm
/flash/rw/store/wget
/ram/f
"""
FLIST=`echo -e "$FILES"`
for FILE in $FLIST;do
  if [ -e "$FILE" ];then
    echo -n "[!! Found bad file !!] Removing $FILE ...";
    rm -f "$FILE";
    test ! -e "$FILE"  && echo " Success. :)" || echo " Failed. :("
  fi;
done;
echo "Starting directory detection."
##### File detection #####
DIRS="""/flash/bin/.p
/flash/rw/pckg/.p
/flash/rw/pckg/flash
"""
DLIST=`echo -e "$DIRS"`
for DIR in $DLIST;do
  if [ -d "$DIR" ];then
    echo -n "[!! Found bad directory !!] Removing $DIR ...";
    rm -rf "$DIR";
    [ ! -d "$DIR" ] && echo " Success. :)" || echo " Failed. :("
  fi;
done;
echo "Starting process detection. Stage 6."
LC=0
while [ "$LC" -le 7 ];do
  LC=$((LC+1))
  FF=0
  for FU in `find /proc/*/comm 2>/dev/null`;do 
    CL=`cat $FU 2>/dev/null`;
    SP=`expr index "$FU" m`;
    SP=$((SP-6-4));
    PPID=`expr substr "$FU" 7 $SP`;
    if [ "$CL" = "usleep" ];then
      FF=1
      echo "[!! Found usleep running. PID: $PPID  [Comm: $CL] ... Killed";
      kill -9 $PPID;
    fi;
  done;
  if [ $FF -gt 0 ];then
    usleep 500000;
  fi;
  if [ $FF -lt 1 ];then
    LC=8;
  fi;
done;
rm -f /tmp/owari* 2>/dev/null
rm -f /tmp/listproc.sh 2>/dev/null
echo "Owari Finished."
exit
		0 x 
			
						psichac píše:
Přiložený script zabije podezdřelé procesy a smaže nebezpečné soubory botnetu "FatKid" a "Hajime".
		0 x 
			
						hapi píše:dost zajímavý, dostal sem se do jednoho routeru kde něco vytvořilo address list s acceptem a v něm byly všechny subnety z routovací tabulky a ostatní drop. Bylo tam 5 filtrů a u každýho komentář a tim že mám upgradovat atd.. a btc peněženkou. Nicméně routeru nic není a nic jinýho zdá se změněno nebylo, žádnej fetch, žádná změna hesla, žádný nový user.
U tohoto predpokladam, ze nejaky eticky hacker paraelne k utocnikum scanuje sit a a kdyz najde diru, tak udela aspon takto zaplatu. Doufa, ze si to upgradujes a posles mu bitcoin za odmenu, ze ti "pomohl".
		2 x 
			
						Tak za me Mikrotik  
 
Nastesti mi to napadlo jen jeden Mikrotik , ale to ze to ABSOLUTNE ignorovalo firewall a proste bez problemu se to administratorsky dostalo pres API dovnitr jen proto, ze API bylo zapnute je u me UPLNE fatal....
Nedokazu si to vysvetlit jinak, nez, ze je Mikrotik momentalne deravy jako reseto. BLE.
EDIT: Nevi nekdo, zda vypnute API staci jako ochrana ? Protoze jinak nevim, jak se branit. Snad dat pred mikrotiky, poradny FW
			
									
						Nastesti mi to napadlo jen jeden Mikrotik , ale to ze to ABSOLUTNE ignorovalo firewall a proste bez problemu se to administratorsky dostalo pres API dovnitr jen proto, ze API bylo zapnute je u me UPLNE fatal....
Nedokazu si to vysvetlit jinak, nez, ze je Mikrotik momentalne deravy jako reseto. BLE.
EDIT: Nevi nekdo, zda vypnute API staci jako ochrana ? Protoze jinak nevim, jak se branit. Snad dat pred mikrotiky, poradny FW
		0 x 
			
						tak to asi nemáš firewall správě zdá se.
			
									
						
		0 x 
			Supermicro + Mikrotik = SuperTik
high speed routery podle požadavků
						high speed routery podle požadavků
Tak firewall spravne mam. Nebo vy tady nekdo mate info, ze to pres firewall nemohlo projit ? 
Na zadnem mikrotiku nemam ani API ani APIS dostupne na WAN. Presto si to ten singapur otevrel jako pivko.
TZN. Firewall to ignorovalo ... Respektive nemam poneti, jak se na to API dostal ...
			
									
						Na zadnem mikrotiku nemam ani API ani APIS dostupne na WAN. Presto si to ten singapur otevrel jako pivko.
TZN. Firewall to ignorovalo ... Respektive nemam poneti, jak se na to API dostal ...
		0 x 
			
						Firewall je v jádře linuxu. Mezi síťovou kartou a aplikacemi. Ještě jsem neslyšel, že by to šlo "probourat". Je vhodné se zamyslet a uznat, že naprostá většina chyb padá na hrb tomu, kdo je mezi klávesnicí a židlí ... tak to je, bylo a bude.
			
									
						
		0 x 
			Jelikož je zde zakázáno se negativně vyjadřovat k provozním záležitostem, tak se holt musím vyjádřit takto: nové fórum tak jak je připravováno považuji za cestu do pekel. Nepřehledný maglajz z toho bude. Do podpisu se mi pozitiva již nevejdou.
						To je sice hezke co pisete, ale proste ty dva porty api z venku dostupne nejsou a nebyly, presto se neco / nekdo dostal z te ip 45.47.X.X zalogoval na API a pustil tam ten dany skript. Tak to je a bylo v logu. Je to proste stejne holy fakt jako tu pisete Vy jak funguje FW. 
A me jedinne co zajima, je to, zda se to nekomu dostalo pres FW jako me. A zda, kdyz to obeslo FW, tak zda VYPNUTI toho API ochrani ten ubohy mikrotik, ktery je momentalne deravy vic nez dost.
Tot vse.
			
									
						A me jedinne co zajima, je to, zda se to nekomu dostalo pres FW jako me. A zda, kdyz to obeslo FW, tak zda VYPNUTI toho API ochrani ten ubohy mikrotik, ktery je momentalne deravy vic nez dost.
Tot vse.
		0 x 
			
						Nicmene az v Mikrotiku aspon pochopi co se vlastne deje a opravi. Tak pak urcite ZASE vyjde najevo, ze to obchazi FW, jako posledne. Protoze krabicka/kernel je holt derava ....
			
									
						
		0 x 
			
						- 
				Dalibor Toman
- Příspěvky: 1246
- Registrován: 13 years ago
ludvik píše:Firewall je v jádře linuxu. Mezi síťovou kartou a aplikacemi. Ještě jsem neslyšel, že by to šlo "probourat".
bohuzel tohle nemusi platit pro ROS. Tam klidne muze byt firewall resen na aplikacni urovni v userspace
		1 x 
			
						Neco podobneho jako tento vehykl: https://www.coresecurity.com/advisories ... r-overflow
Ten nas ale nastesti minul ....
			
									
						Ten nas ale nastesti minul ....
		0 x 
			
						Promiň, ale to mi přijde jako naprostá blbost. Proč by to dělali, když mají k dispozici netfilter? Tedy něco, co nemá žádné výrazné slabiny a je to dlouhodobě používané? A vyhodit statefull paketový filtr komplet do userspace? No ... iluze si nedělám, ale tomu prostě neuvěřím, dokud to neuvidím.
Jo, možná ty jejich vynálezy ohledně hotspotu a tak asi do userspace lezou, ale to jsou jen výjimky.
			
									
						Jo, možná ty jejich vynálezy ohledně hotspotu a tak asi do userspace lezou, ale to jsou jen výjimky.
		0 x 
			Jelikož je zde zakázáno se negativně vyjadřovat k provozním záležitostem, tak se holt musím vyjádřit takto: nové fórum tak jak je připravováno považuji za cestu do pekel. Nepřehledný maglajz z toho bude. Do podpisu se mi pozitiva již nevejdou.
						U nás prozatím MK drží (administrace pouze zevnitř sítě, web přístup blokován, api deaktivováno),
jenom denně stovky pokusů o přístup z adresy: 113.96.223.207. Již několik měsíců cca obden stovky pokusů na různé porty.
			
									
						jenom denně stovky pokusů o přístup z adresy: 113.96.223.207. Již několik měsíců cca obden stovky pokusů na různé porty.
		0 x 
			
						gmork píše:To je sice hezke co pisete, ale proste ty dva porty api z venku dostupne nejsou a nebyly, presto se neco / nekdo dostal z te ip 45.47.X.X zalogoval na API a pustil tam ten dany skript. Tak to je a bylo v logu. Je to proste stejne holy fakt jako tu pisete Vy jak funguje FW.
A me jedinne co zajima, je to, zda se to nekomu dostalo pres FW jako me.
Pokud to máš takhle krásně popsané včetně logu a seš si jistý že firewall máš napsaný dobře, tak je velikách chyba jestli jsi jim to nereportoval? V tom případě to je jen tlachání kterým se nic nevyřeší...
		0 x 
			
						

