It recently came to my attention that glCopyBufferSubData is not applicable to Shader Storage Buffer Objects as the extension excludes mention of it. To make sure, I tested this by printing out the mapped buffers and the new SSBO contained repetitive nonsense showing that this was the case. Without having to create a custom compute shader to do this, is there any way to copy the data on the GPU from a command issued from the CPU similar to what glCopyBufferSubData would do for other buffer types?
With the help of another person, this problem has been solved. Binding each buffer to a SSBO is not valid. Instead, GL_COPY_READ_BUFFER and GL_COPY_WRITE_BUFFER should be used.