|
265 | 265 | owner: "{{ item.id }}"
|
266 | 266 | group: "{{ item.gid }}"
|
267 | 267 | mode: 'g-w,o-rwx'
|
268 |
| - loop: "{{ ubtu24cis_passwd | selectattr('uid', '>=', min_int_uid | int) | selectattr('uid', '<=', max_int_uid | int) | list }}" |
| 268 | + loop: "{{ prelim_captured_passwd_data | selectattr('uid', '>=', min_int_uid | int) | selectattr('uid', '<=', max_int_uid | int) | list }}" |
269 | 269 | loop_control:
|
270 | 270 | label: "{{ item.id }}"
|
271 | 271 |
|
|
308 | 308 | vars:
|
309 | 309 | warn_control_id: '7.2.10'
|
310 | 310 | block:
|
311 |
| - - name: "7.2.10 | AUDIT | Ensure local interactive user dot files access is configured | Check for files" |
312 |
| - ansible.builtin.shell: find /home/ /root/ -name "\.*" -type f -perm /u+x,g+wx,o+wx |
| 311 | + - name: "7.2.10 | AUDIT | Ensure local interactive user dot files access is configured" |
| 312 | + ansible.builtin.shell: find {{ prelim_interactive_users_home.stdout_lines | list | join(' ') }} -name "\.*" -type f |
313 | 313 | changed_when: false
|
314 |
| - failed_when: discovered_homedir_dot_files.rc not in [ 0, 1 ] |
| 314 | + failed_when: discovered_homedir_hidden_files.rc not in [ 0, 1 ] |
315 | 315 | check_mode: false
|
316 |
| - register: discovered_homedir_dot_files |
| 316 | + register: discovered_homedir_hidden_files |
317 | 317 |
|
318 | 318 | - name: "7.2.10 | AUDIT | Ensure local interactive user dot files access is configured | Warning on files found"
|
319 | 319 | when:
|
320 |
| - - discovered_homedir_dot_files.stdout | length > 0 |
321 |
| - - ubtu24cis_dotperm_ansiblemanaged |
| 320 | + - discovered_homedir_hidden_files.stdout | length > 0 |
| 321 | + - not ubtu24cis_dotperm_ansiblemanaged |
322 | 322 | ansible.builtin.debug:
|
323 | 323 | msg:
|
324 |
| - - "Warning!! We have discovered group or world-writable dot files on your system and this host is configured for manual intervention. Please investigate these files further." |
| 324 | + - "Warning!! Please investigate that hidden files found in users home directories match control requirements." |
325 | 325 |
|
326 |
| - - name: "7.2.10 | PATCH | Ensure local interactive user dot files access is configured | Set warning count" |
| 326 | + - name: "7.2.10 | AUDIT | Ensure local interactive user dot files access is configured | Set warning count" |
327 | 327 | when:
|
328 |
| - - discovered_homedir_dot_files.stdout | length > 0 |
329 |
| - - ubtu24cis_dotperm_ansiblemanaged |
| 328 | + - discovered_homedir_hidden_files.stdout | length > 0 |
| 329 | + - not ubtu24cis_dotperm_ansiblemanaged |
330 | 330 | ansible.builtin.import_tasks:
|
331 | 331 | file: warning_facts.yml
|
332 | 332 |
|
333 |
| - - name: "7.2.10 | PATCH | Ensure local interactive user dot files access is configured | Changes files if configured" |
| 333 | + - name: "7.2.10 | AUDIT | Ensure local interactive user dot files access is configured" |
334 | 334 | when:
|
335 |
| - - discovered_homedir_dot_files.stdout | length > 0 |
| 335 | + - discovered_homedir_hidden_files.stdout | length > 0 |
336 | 336 | - ubtu24cis_dotperm_ansiblemanaged
|
337 |
| - ansible.builtin.file: |
338 |
| - path: '{{ item }}' |
339 |
| - mode: 'u-x,go-wx' |
340 |
| - with_items: "{{ discovered_homedir_dot_files.stdout_lines }}" |
| 337 | + block: |
| 338 | + - name: "7.2.10 | AUDIT | Ensure local interactive user dot files access is configured | Changes files if configured .bash_history & .netrc" |
| 339 | + when: |
| 340 | + - discovered_homedir_hidden_files.stdout | length > 0 |
| 341 | + - item | basename in ['.bash_history','.netrc'] |
| 342 | + ansible.builtin.file: |
| 343 | + path: "{{ item }}" |
| 344 | + mode: 'u-x,go-rwx' |
| 345 | + failed_when: discovered_dot_bash_history_to_change.state not in '[ file, absent ]' |
| 346 | + register: discovered_dot_bash_history_to_change |
| 347 | + loop: "{{ discovered_homedir_hidden_files.stdout_lines }}" |
| 348 | + |
| 349 | + - name: "7.2.10 | AUDIT | Ensure local interactive user dot files access is configured | Changes files if configured file mode" |
| 350 | + ansible.builtin.file: |
| 351 | + path: '{{ item }}' |
| 352 | + mode: 'u-x,go-wx' |
| 353 | + failed_when: discovered_dot_bash_history_to_change.state not in '[ file, absent ]' |
| 354 | + register: discovered_dot_bash_history_to_change |
| 355 | + loop: "{{ discovered_homedir_hidden_files.stdout_lines }}" |
| 356 | + |
| 357 | + - name: "7.2.10 | AUDIT | Ensure local interactive user dot files access is configured | Changes files ownerships" |
| 358 | + ansible.builtin.file: |
| 359 | + path: "{{ item }}" |
| 360 | + owner: "{{ prelim_captured_passwd_data | selectattr('dir', 'in', prelim_interactive_users_home.stdout_lines) | selectattr('dir', 'in', item) | map(attribute='uid') | last }}" |
| 361 | + group: "{{ prelim_captured_passwd_data | selectattr('dir', 'in', prelim_interactive_users_home.stdout_lines) | selectattr('dir', 'in', item) | map(attribute='gid') | last }}" |
| 362 | + failed_when: discovered_dot_bash_history_to_change.state not in '[ file, absent ]' |
| 363 | + register: discovered_dot_bash_history_to_change |
| 364 | + loop: "{{ discovered_homedir_hidden_files.stdout_lines }}" |
| 365 | + |
| 366 | + - name: "7.2.10 | PATCH | Ensure local interactive user dot files access is configured | Changes files if configured" |
| 367 | + ansible.builtin.file: |
| 368 | + path: '{{ item }}' |
| 369 | + mode: 'go-w' |
| 370 | + owner: "{{ prelim_captured_passwd_data | selectattr('dir', 'in', prelim_interactive_users_home.stdout_lines) | selectattr('dir', 'in', item) | map(attribute='uid') | last }}" |
| 371 | + group: "{{ prelim_captured_passwd_data | selectattr('dir', 'in', prelim_interactive_users_home.stdout_lines) | selectattr('dir', 'in', item) | map(attribute='gid') | last }}" |
| 372 | + with_items: "{{ discovered_homedir_hidden_files.stdout_lines }}" |
| 373 | + |
| 374 | + - name: "7.2.10 | AUDIT | Ensure local interactive user dot files access is configured | rename .forward or .rhosts files" |
| 375 | + when: |
| 376 | + - item | basename in ['.forward','.rhosts'] |
| 377 | + - item is not search ("CIS") |
| 378 | + ansible.builtin.command: "mv {{ item }} {{ item }}_CIS_TOBEREVIEWED" |
| 379 | + changed_when: true |
| 380 | + loop: "{{ discovered_homedir_hidden_files.stdout_lines }}" |
0 commit comments