Software applications have a tendency to break themselves, so this is something that can be achieved without scripts.
I assume you want some scripts that produce erratic data input to certain applications and cause buffer overflows and alike.
Though I don' think that the proper way of learning Linux is to break all relevant networking applications, but feel free to do so on your own server. You should have a look at the source code of the applications you want to break. Sometimes these have test suites added that you can modify for your purpose. Or have a look at the bug tracking list of that application, to get some ideas.