Checkboxes usually have some identifier to tell if they are checked or not. When working with the default HTML checkboxes, they are an input of type "checkbox" and will have an extra attribute "checked" if they have been checked. Using this knowledge you can create something that resembles the following XPath:
//input[@type='checkbox' and @checked] for checked boxes and
//input[@type='checkbox' and not(@checked)] for unchecked boxes.
Often checkboxes will be more complicated using things like classnames to separate checkboxes, but in most of these cases you will still be working with an input and some identifier for whether it is checked or not. In nearly every case, XPath will allow you to identify the desired boxes.