Much of the time, factor analysis is conducted without any statistical tests per se. It is much more subjective and interpretive than methods such as regression, structural equation modelling, and so on. And generally it is inferential tests that come with assumptions: in order for p values and confidence intervals to be correct, those assumptions must be met.
Now, if the method for choosing the number of factors is set to be the maximum likelihood method, then there is an assumption that goes with this: that the variables input into the factor analysis will have normal distributions.
That the input variables will have nonzero correlations is a sort of assumption in that without it being true, factor analysis results will be (probably) useless: no factor will emerge as the latent variable behind some set of input variables.
As far as there being "no correlation between factors (common and specifics), and no correlation between variables from one factor and variables from other factors," these are not universally assumptions that factor analysts make, although at times either condition (or an approximation of it) might be desirable. The latter, when it holds, it known as "simple structure."
There is another condition that is sometimes treated as an "assumption": that the zero-order (vanilla) correlations among input variables not be swamped by large partial correlations. What this means in a nutshell is that relationships should be strong for some pairings and weak for others; otherwise, results will be "muddy." This is related to the desirability of simple structure and it actually can be evaluated (though not formally "tested") using the Kaiser-Meyer-Olkin statistic, or the KMO. KMO values near .8 or .9 are usually considered very promising for informative factor analysis results, while KMOs near .5 or .6 are much less promising, and those below .5 might prompt an analyst to rethink his/her strategy.