Никаких препятствий для бота csrf не представляет. Например, я могу открыть сайт через phantomjs и программно нажать кнопку сабмита. Все нужные поля и куки будут на месте.
Csrf нужен для того, чтобы уже залогиненный у вас пользователь не мог в фоновом режиме выполнять действия, посещая левый сайт. Т.е. зашел на порносайт, а он наспамил втихаря записей в твиттер, потому что в твиттере пользователь уже залогинен. Чтобы этого не было - генерируют токен при открытии оригинального сайта и привязывают к пользовательской сессии.