This is entirely plausible, because Cocos2d (at least the 0.9.x and 1.0 branches) tends to autorelease everything. This can lead to memory build up on situations where you're spawning a lot of sprites onscreen in a loop. If you're indeed autoreleasing and not leaking, adding an autorelease pool along with your loop may be a quick fix. That said, you might actually be leaking.
To debug memory leaks, I'd start with the Leaks Instrument and perhaps the Allocations instrument as well. In Xcode, hit Command + I, or Product -> Profile

Once you've got the profiler open, you'll see a menu which contains a bunch of debugging instruments:

Once you select leaks, you'll see this handy windows with all kinds of useful information:

On top, you'll see memory allocations and leaks as a graph. On the bottom you can see all kinds of useful information, such as what objects are allocated, how much memory is in use, and a lot more.
For a full treatment of Xcode debugging with instruments, check out this handy Apple Developer video (login required).