uhhhhhhhhhh si nos ponemos con las de nivel web son como 50 xD nivel aplicacion pues es menos.. pero pues tenemos los NULL Pointer con cada registro, y despues los FS, HoF, BoF, IoF, y hay otro que se me olvida.. mira aqui hay un resumen (bastante malo, hay que mejorarlo): http://en.wikipedia.org/wiki/Vulnerability_%28computing%29
pues esas vulnerabilidades estan en el kernel (o en librerias, depende que API.. xD pero las peligrosas peligrosas asi peligrosisimas estan en kernel).. asi que si quieres aprender como detectarlas, en windows, tendras que currarte con ensamblador, y en linux, con C