а почему в пароле при этом конструкция шелла?
Есть GUI для управления паролями пользователя, userdrake, d нем можно создавать пользователя, задавая пароль, и менять его. В целом, там весь GUI запускается по старинке от root, если пользователь смог его открыть, то в принципе сможет и иными способами от рута запустить, но да, не хочется устаривать возможность инъекции на ровном месте