Archiwum

Posts Tagged ‘java’

Złośliwa paczka z FB: IMG_0018.jar

Maj 28, 2014 Dodaj komentarz

Dostałem ostatnio wraz z wiadomością prosty, złośliwy programem. Dotarł on do mnie jako załącznik w poniższej postaci.

fb1

W zipie znajdował się pojedynczy plik jar o słodko brzmiącej nazwie IMG_0018, a w nim jedna klasa  i meta-dane. Prawda, że wygląda niewinnie? 🙂

fb2

Działanie programu
Z ciekawości sprawdziłem co robił program, poniżej zapisane jest jego zachowanie. Jak łatwo zauważyć paczka miała za zadanie ściągać z dropboxa i po cichu rejestrować w systemie złośliwe dllki.

create new dir "C:\Temp\"
create new file "C:\Temp\TIWIWSLN.ADZ"

if file „C:\Temp\TIWIWSLN.ADZ” exists
–> 15x run: regsvr32 /s C:\Temp\TIWIWSLN.ADZ

if file „C:\Temp\TIWIWSLN.ADZ” not exist
–> connect to URL: [dropbox]/s/xnf57eni8dpd547/folder.zip?dl=1
–> if connect response code == 200
—-> copy file from [dropbox]/s/xnf57eni8dpd547/folder.zip?dl=1 to C:\Temp\TIWIWSLN.ADZ
—-> 15x run: regsvr32 /s C:\Temp\TIWIWSLN.ADZ
–> repeat for: nwju1443do0kkyw, q7qn5enz2han406, jklutosvow2sa28, nl51ieactma87q0, mxflfforve2ju65, pf5yxvq1wmjcun2, …

Pliki z dropboxa nie są już dostępne, więc nie jestem w stanie stwierdzić co dokładnie zawierały, ale nie spodziewałbym się niczego dobrego.

Uruchomiłem program, co teraz?
Jeśli ktoś przypadkiem ściągnął i uruchomił program radzę wylogować z Facebooka, przez którego najwyraźniej rozprzestrzenia się paczka. Kolejnym krokiem powinno być usunięcie niepożądanych dll-ek.

START -> cmd
regsvr32 /u C:\Temp\TIWIWSLN.ADZ

Jeśli powyższa komenda nie zadziała spróbujcie skorzystać z dowolnego programu do usuwania niepożądanego oprogramowania (np. AdwCleaner). Na końcu należy oczywiście usunąć folder C:\Temp\TIWIWSLN.ADZ wraz z zawartością.

Trudno powiedzieć czy to wystarczy, dlatego polecam przeskanowanie całego systemu programem antywirusowym i antymalware-owym.

PS
Jeśli macie jakieś dodatkowe informacje o tym programie piszcie śmiało, a uzupełnię instrukcję.

Aktualizacje
Okazało się, że nowe linki z dropboxa, są generowane dynamicznie. Dorwałem się więc w końcu do tej nieszczęsnej dllki i nawet udało mi się ją zdeasemblować (PE-Explorer), ale na przeglądanie tak niskopoziomowego kodu nie mam czasu. Jakby ktoś był ciekaw to mogę podesłać.

O problemie pisze już niebezpiecznik: „Hahaha wirus na Facebooku — nie otwierajcie załączników ZIP z wiadomości od znajomych”

Reklamy

jar.camp() – wrażenia

Grudzień 12, 2012 Dodaj komentarz

Miałem szczęście znaleźć się wśród pierwszych 65 osób, które zgłosiły się po darmowe wejściówki na pilotowy jar.camp(). Jako, że patronat nad imprezą objął Metrosoft poza wykładami na stylowej barce (alrina.pl) można było spodziewać się napitku oraz poczęstunku.

Na początek zdziwienie – na miejscu stawiło się tylko ok. 20 osób. Nie zraziło to jednak organizatorów i wykłady zaczęły się planowo. Jako pierwszy mówił Radosław Urbaś z Sabre. Opowiedział on o podstawach OSGi oraz Jigsaw w przystępny sposób przedstawiając idee oraz zasady działania tych rozwiązań. Ci, którzy uczęszczali na wykłady dr Byrskiego (Techniki obiektowe i komponentowe) mogli spokojnie pominąć tę prelekcję i skupić się na kanapeczkach. 😉

Kolejne dwa wykłady bardziej mnie zaciekawiły. Łukasz Picur opowiedział o projekcie Lambda, czyli wprowadzeniu do Javy wyrażeń Lambda. Jest to bardzo ciekawa i zaawansowana w realizacji inicjatywa, chociaż w C# wygląda to nieznacznie lepiej. Więcej o projekcie znajdziecie tutaj. Bloga, którego Piotrek współtworzy, możecie obejrzeć pod tym adresem.

Ostatnim prelegentem był Piotr Łaskawiec z Metrosoft. Przedstawił potencjał drzemiący w JVM, przechodząc poprzez architekturę, po przez możliwości i tuning. Brzmi to może trochę sucho, ale wykład był ciekawy i dotyczył nawet takich nowinek jak The Garbage-First (G1) garbage collector.

Niewątpliwie jar.camp() jest imprezą, którą warto obserwować. Ma potencjał, a wsparcie Metrosoftu sprawia, że warto się na niej pojawić chociaż na darmowe piwo i luźną dyskusję o programowaniu. 🙂 Więcej o imprezie na stronie jarcamp.pl.

Java Killers – cz. 1

Październik 19, 2012 Dodaj komentarz

Pierwsze zestawienie zagadek dotykających różnych zawiłości językowych. Na dobry początek przedstawiam dziesięć klasycznych zagadnień wyjętych z książki „Java Puzzlers: Traps, Pitfalls, and Corner Cases”:

java-puzzlers-sampler.pdf

Własne CodeFolds w Eclipse/NetBeans IDE (czyli #region z C# w Javie)

Październik 5, 2012 Dodaj komentarz

Organizowanie kodu w regiony znane z C# od razu mi się spodobało. Zwijania fragmentów kodu w opisane bloki jest bardzo naturalne i wygodne. Oczywiście nie zgadzam się z teorią, że regiony służą do ukrywania bałaganu w programie, dla mnie jest to forma zwiększenia przejrzystości i ułatwienia dostępu do właściwej logiki.

Mniejsza jednak o motywację 😉 Ostatnio z różnych względów piszę więcej w Javie niż w C# i trochę zatęskniłem za regionami. Oto co znalazłem w potrzebie:

NetBeans
Użytkownicy NetBeans IDE są niejako uprzywilejowani, ponieważ twórcy tego narzędzia wcześniej przewidzieli zapotrzebowanie na „regiony”. Ich użycie jest bardo proste, odsyłam więc do wiki (FaqCustomCodeFolds). Plusem jest, że po zaznaczeniu fragmentu kodu pojawia się możliwość zwinięcia go w opatrzony komentarzem blok, wystarczy wybrać odpowiednią opcję z podpowiedzi umieszczanych pomiędzy numerami wiersz.

Eclipse
Pluginy, pluginy, pluginy. Taka jest już specyfika Eclipsa. Wybrałem coffee-bytes, który dobrze spełnia swoją rolę. O instalacji i sposobie korzystania przeczytacie tutaj.

IntelliJ
Nie napisałem nic o IntelliJ IDEA, ponieważ nigdy nie używałem tego IDE (wciąż pozostaję wierny Eclipsowi :)). Jednak zapewne spróbuję przekonać się do czegoś nowego i wtedy uzupełnię ten wpis o rozwiązania tam stosowane.