FB explicitly asks connections about other connections. This means other people might be giving your info to FB even if you don't.
That's all they know for sure.
it's something but not much.
"Did Jane attend <event>?"
"Do you work with Jane an FooCorp?"
etc etc etc
Each of these is insignificant and noisy, but when aggregated it allows 99.9% predictions on stuff like "who are you voting for", "how much do you earn", "are you expecting a child", "are you buying a house/car/trip/anything significant soon", "how's your health", "are you sleeping well", "where do you live", "are you on a trip", etc.
People get ads about health issues before they realize they have these issues, because the Algorithm knows better.
When you have enough noisy uncertain data it doesn't matter that it's uncertain and noisy.