Since you are asking a question about ethics, you need to specify which code of ethics you are adhering to. I will answer based on the Software Engineering Code of Ethics and Professional Practice from the ACM.
The important sections are the ones on the client relationship and the product itself:
CLIENT AND EMPLOYER - Software engineers shall act in a manner that
is in the best interests of their client and employer consistent with
the public interest.
specifically:
2.06. Identify, document, collect evidence and report to the client or
the employer promptly if, in their opinion, a project is likely to
fail, to prove too expensive, to violate intellectual property law, or
otherwise to be problematic.
and
PRODUCT - Software engineers shall ensure that their products and
related modifications meet the highest professional standards
possible.
specifically:
3.06. Work to follow professional standards, when available, that are
most appropriate for the task at hand, departing from these only when
ethically or technically justified.
3.07. Strive to fully understand the specifications for software on
which they work.
3.08. Ensure that specifications for software on which they work have
been well documented, satisfy the users’ requirements and have the
appropriate approvals.
The above should answer your question about your ethical obligations. Your development team needs to alert your client about the issues your team sees with the requirements.
I would suggest that you do not do this on your own. You need to document what you see as the issues, and discuss with your project management and technical leadership.
Well run projects should have a requirement management process, which should include provisions for documenting and resolving problems that are discovered during development.