Wenn du keine Lizenz beilegst, dann ist deine Software automatisch durch nationales Urheberrecht geschützt. Das bedeutet unter anderem, dass das Modifizieren deiner Software ohne Erlaubnis deinerseits nicht erlaubt ist (wenn du mehr wissen willst, lies das Urheberrecht und/oder kontaktiere einen Anwalt, ich bin auf jeden Fall keiner).
Die GNU-Lizenzen sind anders. Anstelle dir noch mehr Freiheiten zu nehmen, wie es andere Lizenzen machen, geben dir die GNU-Lizenzen mehr Freiheit, wenn du Software erhältst. Grob gesagt, du kannst den Sourcecode anfordern, diesen modifizieren, in deiner Software verwenden oder verkaufen, solange -- and that's the point -- du die Ergebnisse wieder unter einer Lizenz, die dem User diese Rechte auch garantiert, veröffentlichst. Das ist das Prinzip der
GNU GPL (GNU General Public License). Es gibt noch die
GNU LGPL (GNU Lesser General Public License) für Bibliotheken, die es erlauben, die Bibliotheken zu linken, ohne dass das Programm, das sie linkt, unter einer Open-Source-Lizenz stehen müsste (wie das bei der
GPL der Fall wäre). Außerdem existiert noch die
GNU FDL (GNU Free Documentation License), die speziell für Texte (Dokumentation) zugeschnitten ist.
Wenn du eines deiner Programme unter einer solchen Lizenz veröffentliichen willst, musst du nur einen Vermerk in dein Programm einfügen, dass das Proogramm unter dieser Lizenz steht, und die Lizenz beilegen (genaueres steht am Ende der
GPL, nach "End of Terms and Conditions").
Das Thema ist relativ komplex (viel komplexer, als man meinen könnte). Für einen Überblick über die GNU-Lizenzen schaue auf
http://www.gnu.org/copyleft/, die offizielle Seite der Open Source Initiative ist
http://www.opensource.org/, dort findest du auch viele andere Open-Source-Lizenzen.