Limbajul de scripting mIRC
MIRC Scripting Language | |
Limbajul de scripting mIRC | |
Extensii fișiere | .mrc, .ini |
---|---|
Paradigmă | Programare orientată eveniment, Programare procedurală |
Apărut în | 1995 |
Proiectat de | Khaled Mardam-Bey |
Dezvoltator | Khaled Mardam-Bey |
Ultima versiune | 7.72[1] |
Tipare | Dynamic typing |
Implementări majore | mIRC |
Sistem de operare | Microsoft Windows |
Licență | Software proprietar |
Prezență online | http://mirc.com |
Modifică date / text |
Limbajul de scripting mIRC (MIRC scripting language) prescurtat si 'mSL' este un limbaj utilizat de mIRC, un client IRC popular pentru Windows.
Utilizare
[modificare | modificare sursă]- Pentru canale si protectii personale impotriva oricarui atac (flood, spam, flood prin intermediul CTCP, etc)
- Cu acest limbaj pot fi create in mIRC anumite ferestre de dialog pentru o mai buna servire a ghidului de compatibilitate.
- Ferestrele de dialog pot include MDX (mIRC Dialog Extension) dar si DCX (Dialog Control Extension). De asemenea sunt si cateva versiuni de mdx.dll si dcx.dll modificate de catre hackerii retelelor IRC.
- Robotii IRC care monitorizeaza automat canalele IRC, trivia sau alte functii dorite de utilizatorii canalului.
- Comenzi pentru usurarea activitatilor pe retelele IRC precum inregistrare si autentificare automata atat la nume cat si la canal.
Stocarea scripturilor
[modificare | modificare sursă]Scripturile IRC pot fi stocate atat in fisiere text, in general cu extensie .mrc, sau in fisiere .ini. In afara de asta, aceste scripturi pot fi stocate si in alte extensii precum .exe, .script, etc. Utilizatorii pot incarca mai multe scripturi in acelasi timp, insa, in unele cazuri un script poate intra in conflict cu altul, acestea nemaiputand functiona corect.
Caracteristicile limbajului
[modificare | modificare sursă]mIRC scripting implică o nomenclatură aparte care nu este în întregime în concordanță cu cele mai multe limbaje de programare din restul lumii.(Cel mai notabil, termenul identificator, care in majoritatea limbajelor de programare se refera la o variabila sau functie (chiar daca returneaza o functie sau nu), in mIRC se refera la o valoare care returneaza o functie).
- Functiile implementate se numesc comenzi, sau ele daca returneaza o valoare, identificatori.
- Functiile personalizate se numesc aliasuri. Aliasurile care returneaza o valoare sunt cunoscute sub numele de aliasuri personalizate. Ambele pot fi apelate atat de la linia de comanda sau dintr-o parte a scriptului la fel cum sunt si comenzile si identificatorii implementati.
- Popup-urile se refera la meniul unui script, astfel ca in mIRC veti gasii meniu pentru Status, Canal, Bara de meniuri, Lista de utilizatori si meniul pentru convorbirile private cu alti utilizatori.
- Remote sau control, se refera la manipularea evenimentelor din cadrul scripturilor incarcate in mIRC, iar un eveniment se apeleaza cand se foloseste o anumita comanda de catre utilizator.
- Toate variabilele sunt dinamic.
Exemple de cod
[modificare | modificare sursă]The code below is in the remote scripts format. If placed into an alias file, the command names should not be preceded by the word "alias
". Test Comments include the common /* comment */
and ;comment
.
Exemplu a programului Hello World:
;Defines the alias 'hello' in the remote script
;Note: if this is placed in an alias script,
;the 'alias' part must be removed (result: hello {)
;Usage: /hello
alias hello {
;Displays(/echo) 'Hello World!' into the active window(-a)
echo -a Hello World!
}
A remote script to automatically respond to certain text
;Placed in a remote script
;When a user types Hello! in a channel,
;you answer back: Hello, [nickname]!
on *:TEXT:Hello!:#:{ msg $chan Hello, $nick $+ ! }
;When a user types Hello! in a private message,
;you answer back: Hello, [nickname]!
on *:TEXT:Hello!:?: { msg $nick Hello, $nick $+ ! }
;Here is a script which automatically gives voice to a user
;who joins a particular channel (The Bot or user should have HOP)
on *:JOIN:#?: { mode $chan +v $nick }
;A bad word script
on *:Text:die*:#: { .mode $chan +b $nick | kick $chan $nick Dont say that again }
Bibliografie
[modificare | modificare sursă]- Smith, Chris. (2004). "Hack #20 Automate IRC with Scripting" in IRC Hacks: 100 Industrial-Strength Tips & Tools. Paul Mutton, ed. O'Reilly Media, Inc. pp. 71–74. (In-depth example of script features and usage)
- Jose Nazario (2004)Defense and Detection Strategies Against Internet Worms. Artech House, 2004. p. 53, 55. (Discusses 1997 mIRC script attack.)
- Ken Dunham, Jim Melnick (2008) Malicious Bots: An Inside Look into the Cyber-Criminal Underground of the Internet. CRC Press. p. 7-31. (In-depth analysis/reverse engineering of mIRC-script-based malware bot)
- Peter Szor (2005). The Art of Computer Virus Research and Defense. Pearson Education. Ch. 3.7.7.
- David Harley, Robert S. Vibert (2007). AVIEN Malware Defense Guide for the Enterprise. Elsevier. p. 147. (usage in script attacks)
- Esharenana E. Adomi (2008). Security and Software for Cybercafés. Idea Group Inc (IGI). p. 173.
- Markus Jakobsson, Zulfikar Ramzan. (2008). Crimeware: Understanding New Attacks and Defenses. Addison-Wesley Professional. p. 194.
Legături externe
[modificare | modificare sursă]- Official mIRC website
- mIRC Scripts pe Curlie
- mIRC Online Manual — documentation in single-page HTML format
- ^ mIRC 7.72 has been released! (November 27th 2022) (în engleză), , accesat în