Commit 951e395
committed
security: fix CodeQL command injection and path traversal alerts
- Add validatePath() helper to check path safety before external commands
- Validate paths in delete.go (moveToTrash), scanner.go (mdfind, du),
and main.go (open command)
- Remove overly restrictive character whitelist that rejected valid
macOS paths (Chinese, emoji, $, ;, etc.)
- Unify path validation logic across all three files
Fixes CodeQL alerts:
- Command injection in osascript (delete.go)
- Command injection in mdfind/du (scanner.go)
- Path traversal in open command (main.go)1 parent f6acfa7 commit 951e395
3 files changed
+67
-24
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
126 | 126 | | |
127 | 127 | | |
128 | 128 | | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
129 | 134 | | |
130 | 135 | | |
131 | 136 | | |
| |||
146 | 151 | | |
147 | 152 | | |
148 | 153 | | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
775 | 775 | | |
776 | 776 | | |
777 | 777 | | |
778 | | - | |
779 | | - | |
780 | | - | |
| 778 | + | |
781 | 779 | | |
782 | 780 | | |
783 | 781 | | |
784 | 782 | | |
785 | 783 | | |
786 | 784 | | |
787 | | - | |
788 | | - | |
789 | | - | |
| 785 | + | |
790 | 786 | | |
791 | 787 | | |
792 | 788 | | |
| |||
800 | 796 | | |
801 | 797 | | |
802 | 798 | | |
803 | | - | |
804 | | - | |
805 | | - | |
| 799 | + | |
806 | 800 | | |
807 | 801 | | |
808 | 802 | | |
809 | 803 | | |
810 | 804 | | |
811 | 805 | | |
812 | | - | |
813 | | - | |
814 | | - | |
| 806 | + | |
815 | 807 | | |
816 | 808 | | |
817 | 809 | | |
| |||
829 | 821 | | |
830 | 822 | | |
831 | 823 | | |
832 | | - | |
833 | | - | |
834 | | - | |
| 824 | + | |
835 | 825 | | |
836 | 826 | | |
837 | 827 | | |
838 | 828 | | |
839 | 829 | | |
840 | 830 | | |
841 | | - | |
842 | | - | |
843 | | - | |
| 831 | + | |
844 | 832 | | |
845 | 833 | | |
846 | 834 | | |
| |||
854 | 842 | | |
855 | 843 | | |
856 | 844 | | |
857 | | - | |
858 | | - | |
859 | | - | |
| 845 | + | |
860 | 846 | | |
861 | 847 | | |
862 | 848 | | |
863 | 849 | | |
864 | 850 | | |
865 | 851 | | |
866 | | - | |
867 | | - | |
868 | | - | |
| 852 | + | |
869 | 853 | | |
870 | 854 | | |
871 | 855 | | |
| |||
1172 | 1156 | | |
1173 | 1157 | | |
1174 | 1158 | | |
| 1159 | + | |
| 1160 | + | |
| 1161 | + | |
| 1162 | + | |
| 1163 | + | |
| 1164 | + | |
| 1165 | + | |
| 1166 | + | |
| 1167 | + | |
| 1168 | + | |
| 1169 | + | |
| 1170 | + | |
| 1171 | + | |
| 1172 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
409 | 409 | | |
410 | 410 | | |
411 | 411 | | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
412 | 422 | | |
413 | 423 | | |
414 | 424 | | |
| |||
635 | 645 | | |
636 | 646 | | |
637 | 647 | | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
| 654 | + | |
| 655 | + | |
| 656 | + | |
| 657 | + | |
638 | 658 | | |
639 | 659 | | |
640 | 660 | | |
| |||
0 commit comments