Package Proposal #1 (Security packages), rev03

Kento Yoshida

Hello CIP core group members,

I'd formally like to propose to add security packages as revision 3.
I've already the description sheet before, but I'll share all files for this review again in this mail.

proposal_SecurityWG_rev03.yml: the full flat proposal file including all source and binary sets with reason, security tag information and so on
Requirements_for_proposal_SecurityWG_rev03.xlsx: the same file which I've already sent before to explain the requirement in the standard
2_src-bin_sort_SecurityWG.txt: the 95 proposed package lists simplified with source and binary names
2_src-bin_sort_all.txt: the 179 package lists consisted of the 95 lists for this proposal and the 84 lists already approved by CIP core as a minimal base shown in brackets

I'd like to set the due date for reviewing this proposal by February 21, Friday.
It would be very helpful if I can get your feedback, concerning or question in this week due to resolve by the due date.

Could you proceed this proposal? Thank you for many cooperation.

Thank you all for considering my request,

-----Original Message-----
From: cip-dev <cip-dev-bounces@...> On Behalf Of Kento Yoshida
Sent: Friday, February 7, 2020 5:58 PM
To: Punit Agrawal <punit1.agrawal@...>;
Cc: cip-security@...; cip-dev@...
Subject: Re: [cip-dev] RESUME REQUEST: [cip-core] Package Proposal #1 (Security

Hello reviews,

Thank you for your supporting against our proposal.
I'd like to share you the description sheet for our proposal of security packages.
Please consider my attachment and the following note.

1. Added "fail2ban" as the alternative "pam-shield" because "pam-shield" is not
well-maintained and replace with "fail2ban"
2. There are 3 packages in bottom that are under discussion to add. They are out of
scope for this review but I'd like to explain them, so let me know your ideas if you
3. The requirements for hardware functions are out of scope for this review, but
tpm2 is concrete example mentioned in the standard, so I'd like to add some
packages related tpm2. However, they are options for only using tpm2, so let me
know your comments against adding the packages for a specific use case.



I'd like to create new proposal to add "fail2ban", but the script for generating
proposal shows the following error, and I could not generate it.

Source package name:
Binary packages:

Traceback (most recent call last):
File "./", line 218, in <module>
File "./", line 176, in generate_proposal
deb_src_pkg_info = prepare_src_pkg_info(apt, cve, dep_src_pkg,
File "./", line 51, in prepare_src_pkg_info
dp_list_final = gpd.get_pkg_depends(pkg, apt)
File "/home/yoshidak/cip-pkglist/", line 102, in
dp_list, dp_vir_pkg_dict = apt.apt_cache_get_depends_list(pkg_name)
File "/home/yoshidak/cip-pkglist/", line 222, in
File "/usr/lib/python2.7/dist-packages/apt/", line 238, in __getitem__
raise KeyError('The cache has no package named %r' % key)
KeyError: "The cache has no package named 'any>'"

I think that the reason is below. When I enter the information of "fail2ban", the
script get the dependency for it as <python3:any>.

Enter the source package name: fail2ban
Choose the required binary packages:
1: fail2ban
Input the numbers in comma separated (eg: 1,3,4): 1

Choose one of the virtual package provider: <python3:any>
1: python3
Input the number: 1
Are any of the binary packages used in target rootfs?
1: True
2: False

Would you confirm this issue?

Best regards,

-----Original Message-----
From: Punit Agrawal <punit1.agrawal@...>
Sent: Thursday, January 23, 2020 4:35 PM
To: Kento Yoshida <kento.yoshida.wz@...>
Cc: cip-dev@...; cip-security@...
Subject: Re: [cip-dev] RESUME REQUEST: [cip-core] Package Proposal #1

Thank you for your comments, Yoshida-san. Follow up comments inline.

Kento Yoshida <kento.yoshida.wz@...> writes:

Hello and thank you for your comment, Punit,

-----Original Message-----
From: Punit Agrawal <punit1.agrawal@...>
Sent: Monday, January 20, 2020 7:29 PM
To: Kento Yoshida <kento.yoshida.wz@...>
Cc: cip-dev@...; kazuhiro3.hayashi@...;
Subject: Re: [cip-dev] RESUME REQUEST: [cip-core] Package Proposal #1

Hello Yoshida-san,

Kento Yoshida <kento.yoshida.wz@...> writes:


I would like to resume our proposal from security working group.
As you know, Kazu has modified the script to generate a proposal
and posted the
minimum base system proposal, and then I created the new proposal.

The difference from the original (rev01) proposal is below:
1. We remove 'duplicity', 'google-authenticator', 'pam-shield' and
'suricata' in the
new proposal because they have an issue such as non-well maintained,
python version, too much dependencies and so on. We'll separately
propose them after solved these issues.
2. The new proposal shows all source package as flat. Thanks to the
new script,
3. Actually several packages overlap with the proposed packages for
base system in Debian, so I added comment them like that.

Would you check this proposal and set the due date to review it?

Please reply if you have any comments or questions.
I have a comment about packages in the proposal that depend on
hardware / system features -

* Some packages in the proposal depend on special purpose hardware to
provide their functionality. e.g., TPM.

In systems, where TPM is not present (or similar functionality is
provided by alternate mechanisms), the TPM related packages will not
be useful. e.g., the non-x86 platforms in the CIP reference hardware

* Similarly, some packages require the system to be connected to the

In both of these situations, I am wondering what is the impact on
compliance? Is there a need to also define minimal set of hardware
features expected from reference hardware to be able to meet
How each reference hardware satisfies the requirements should be
considered by each reference hardware provider.

But without an explicit statement of the requirement, how can a
hardware vendor wanting to develop system for CIP users know what
features to enable in their system?

If we provide hardware mechanisms similar with TPM to protect
credentials and authentications, we can meet compliance requirements.
TPM2 specification is more than 2000 pages long with many features and
functions. I believe the IEC standard requires a subset of this
functionality. The Security WG maybe intimately familiar with the
required features but for the reviewers on this list, there isn't any criteria to use
for evaluation.

Stating these functional requirements explicitly will serve the dual
purpose of -

* Provide an objective criteria for evaluating the package proposal
discuss alternatives)

* Give hardware / system vendors the features / functions needed by CIP

What do you think?

TPM related packages are options in only systems where TPM is
implemented as you said. If supporting these packages require too
much costs, the necessity of them will diminish. Actually the
standard lists TPM as a typical example, so we thought it will be
useful to maintain TPM related packages for many users, but their
necessities depend on supporting cost.
I see - thanks for the background of the TPM-related packages in the proposal.

To help review the package list (and also discuss alternatives), it
would help to define the underlying functionality that is required in
more detail, e.g., secure key storage, verified boot, etc. It'll make
it possible review the proposal more concretely.

Join to automatically receive all group messages.